技术笔记

Git 常用命令速查

这份速查表整理自我日常开发中真正用得到的一批 Git 命令。不追求完整, 只追求需要的时候能立刻找到。文中命令在 Git 2.23 及以上版本验证过。

一、日常提交三步

git status              # 查看工作区状态
git add -A              # 暂存所有改动
git commit -m "feat: 添加登录接口"

提交信息建议写清楚「做了什么」,而不是「修改了文件」。团队有规范时按规范来。

二、分支操作

git branch                     # 列出本地分支
git switch -c feature/login    # 创建并切换到新分支
git switch main                # 切换到 main
git branch -d feature/login    # 删除已合并的分支
git branch -D feature/login    # 强制删除(未合并也能删,慎用)

新版本 Git 推荐用 switch 代替 checkout,语义更清晰。

三、与远程仓库同步

git remote -v
git fetch origin
git pull --rebase origin main
git push -u origin feature/login

pull --rebase 可以让提交历史更接近一条直线,减少无意义的 merge commit。 第一次把分支推送到远程时加上 -u,之后直接 git push 即可。

四、回退与撤销

场景 命令
撤销工作区未暂存的修改 git restore <file>
取消暂存(保留工作区修改) git restore --staged <file>
修改上一次提交 git commit --amend
生成一个反向提交(安全) git revert <commit>
本地回退到某个提交(会重写历史) git reset --hard <commit>

git reset --hard 会丢弃工作区改动,执行前先确认 git status。 如果误操作了,git reflog 通常能把你救回来。

五、查看历史

git log --oneline --graph --decorate --all   # 图形化查看所有分支
git diff                                     # 工作区与暂存区的差异
git diff --staged                            # 暂存区与最后一次提交的差异
git show <commit>                            # 查看某次提交的详情
git blame <file>                             # 查看每行代码的最后修改者

六、几个救命命令

git stash push -m "wip: 临时保存"
git stash list
git stash pop                 # 恢复最近一次 stash
git reflog                    # 找回误删的提交
git cherry-pick <commit>      # 把某个提交摘到当前分支

七、我的习惯

  • 小步提交,一次提交只做一件事。
  • 提交前先看 git status 和 git diff,避免把调试代码带上去。
  • 分支命名使用 feat/、fix/、docs/ 前缀。
  • push 前先 pull --rebase,减少冲突时的手忙脚乱。
  • 遇到不懂的命令,先 git help <command>,比搜索结果可靠。

命令只是工具,真正重要的是理解三条主线:工作区、暂存区和提交历史。 理解了这三个区域,大多数 Git 操作都能推导出来。

← 返回全部笔记 最后更新:2026-10-12