Git常用命令完全指南:從入門到精通
一、基礎配置命令
1. 用戶信息配置
# 設置全局用戶名
git config --global user.name "你的名字"# 設置全局郵箱
git config --global user.email "你的郵箱@example.com"# 查看所有配置
git config --list
2. 倉庫初始化
# 初始化當前目錄為Git倉庫
git init# 克隆遠程倉庫到本地
git clone https://github.com/username/repo.git# 克隆指定分支
git clone -b branch_name https://github.com/username/repo.git
二、基礎工作流命令
1. 狀態查看
# 查看當前狀態(最常用)
git status# 簡短狀態顯示
git status -s
# 輸出示例:
# M README.md (已修改)
# A newfile.txt (已添加)
# ?? untracked.js (未跟蹤)
2. 添加與提交
# 添加單個文件
git add filename# 添加所有變更(包括新文件和修改)
git add .# 添加所有修改(不包括新文件)
git add -u# 提交變更
git commit -m "提交描述信息"# 添加并提交(適合小改動)
git commit -am "添加并提交"
3. 查看歷史
# 查看完整提交歷史
git log# 單行顯示提交歷史
git log --oneline# 帶分支圖的提交歷史
git log --graph --all --oneline# 查看某文件的修改歷史
git log -p filename
三、分支管理命令
1. 基礎分支操作
# 查看所有分支
git branch -a# 創建新分支
git branch new-feature# 切換分支
git checkout develop# 創建并切換分支(常用)
git checkout -b hotfix# 刪除分支
git branch -d old-feature
2. 分支合并與變基
# 合并分支到當前分支
git merge feature-branch# 變基(重寫提交歷史)
git rebase main# 交互式變基(修改最近3次提交)
git rebase -i HEAD~3
3. 遠程分支操作
# 獲取遠程分支
git fetch origin# 跟蹤遠程分支
git checkout --track origin/remote-branch# 推送本地分支到遠程
git push -u origin local-branch# 刪除遠程分支
git push origin --delete old-branch
四、撤銷與回退命令
1. 工作區撤銷
# 撤銷工作區單個文件的修改
git restore filename# 撤銷工作區所有修改
git restore .# 撤銷所有未跟蹤文件
git clean -fd
2. 暫存區撤銷
# 將文件移出暫存區(保留修改)
git restore --staged filename# 清空暫存區(保留工作區修改)
git reset
3. 提交回退
# 撤銷上一次提交(創建新提交)
git revert HEAD# 回退到指定提交(保留修改)
git reset commit_id# 硬回退(丟棄所有修改)
git reset --hard commit_id
五、遠程倉庫操作
1. 遠程連接管理
# 查看遠程倉庫
git remote -v# 添加遠程倉庫
git remote add upstream https://github.com/original/repo.git# 修改遠程倉庫URL
git remote set-url origin https://new.url/repo.git
2. 推送與拉取
# 推送當前分支到默認遠程倉庫
git push# 強制推送(謹慎使用)
git push -f# 拉取遠程更新(fetch + merge)
git pull# 拉取遠程更新(fetch + rebase)
git pull --rebase
六、高級實用命令
1. 儲藏更改
# 儲藏當前工作區修改
git stash# 查看儲藏列表
git stash list# 恢復最近儲藏
git stash pop# 恢復指定儲藏
git stash apply stash@{1}
2. 標簽管理
# 創建標簽
git tag v1.0.0# 創建帶注釋的標簽
git tag -a v1.1.0 -m "Release version 1.1.0"# 推送標簽到遠程
git push origin --tags# 刪除本地標簽
git tag -d v0.9.0
3. 文件忽略
創建.gitignore
文件:
# 忽略所有.class文件
*.class# 忽略node_modules目錄
node_modules/# 忽略.env環境文件
.env# 不忽略特定文件
!important.class
4. 差異比較
# 比較工作區和暫存區
git diff# 比較暫存區和最新提交
git diff --staged# 比較兩個分支
git diff branch1..branch2# 比較指定文件在不同分支的差異
git diff branch1 branch2 -- filename
七、Git命令速查表
分類 | 命令 | 功能描述 |
---|---|---|
基礎操作 | git init | 初始化倉庫 |
git clone [url] | 克隆遠程倉庫 | |
git status | 查看狀態 | |
提交相關 | git add [file] | 添加到暫存區 |
git commit -m "msg" | 提交變更 | |
git commit --amend | 修改上次提交 | |
分支管理 | git branch | 查看分支 |
git checkout -b [branch] | 創建并切換分支 | |
git merge [branch] | 合并分支 | |
遠程操作 | git remote -v | 查看遠程倉庫 |
git push | 推送到遠程 | |
git pull | 從遠程拉取 | |
撤銷操作 | git restore [file] | 撤銷工作區修改 |
git restore --staged [file] | 撤銷暫存區添加 | |
git reset [commit] | 回退到指定提交 | |
歷史查看 | git log | 查看提交歷史 |
git log --oneline --graph | 圖形化歷史 | |
git diff | 比較差異 |
八、最佳實踐小貼士
-
提交規范:使用清晰、一致的提交信息格式
feat: 添加用戶登錄功能 fix: 解決首頁加載問題 docs: 更新API文檔
-
分支策略:
main/master
:穩定生產分支develop
:開發主分支feature/*
:功能開發分支hotfix/*
:緊急修復分支
-
黃金法則:
- 頻繁提交小改動
- 提交前使用
git diff
檢查變更 - 推送前拉取最新代碼
- 慎用
git push -f
強制推送
-
救命命令:
# 查看命令幫助 git help [command]# 查看命令簡寫手冊 git [command] -h
總結
Git的強大功能源于其豐富的命令集,掌握這些常用命令將極大提升你的開發效率。記住:
- 工作區 → 暫存區 → 倉庫 是Git的核心工作流
add
、commit
、push
、pull
是最常用命令- 理解
reset
、revert
、stash
等撤銷操作能救你于危難 - 良好的分支管理策略是團隊協作的基礎
實踐是最好的學習方式,建議在日常開發中多使用這些命令,逐步形成自己的Git工作流。遇到問題時,別忘了Git內置的幫助系統(git help [command]
)是你最好的朋友!
掌握Git是每個開發者的必備技能,本文整理了最常用、最實用的Git命令,助你高效管理代碼版本。
「小貼士」:點擊頭像→【關注】按鈕,獲取更多軟件測試的晉升認知不迷路! 🚀