Git 命令速查表 - Git 常用命令大全

Git 日常协作和救火最常用的命令都在这里了,按提交、分支、回退、远程和排查分组,commit 写错或分支搞乱时按组找解法。

版本控制·共 26 条命令·最后更新 2026-07-21
返回 版本控制

提交与暂存 6

git status -s
简洁查看工作区状态
git add -p
逐块选择要暂存的改动
git commit -m "msg"
提交暂存区改动
git commit --amend
修改最后一次提交(信息或内容)
git stash
临时收起改动,切分支救火用
git stash pop
恢复最近一次 stash 的改动

分支与合并 5

git branch -a
列出本地和远程分支
git switch -c feat/x
创建并切换到新分支(新写法)
git merge --no-ff feat/x
合并分支并保留合并提交
git rebase main
把当前分支变基到 main,保持线性历史
git cherry-pick <sha>
挑选单个提交应用到当前分支

回退与撤销 5

git restore <file>
丢弃工作区文件改动(新写法)
git restore --staged <file>
把文件移出暂存区,保留改动
git reset --soft HEAD~1
撤销最后一次提交,保留改动在暂存区
git reset --hard HEAD~1
彻底丢弃最后一次提交和改动,慎用
git revert <sha>
生成反向提交撤销某次改动,安全可推共享分支

远程与排查 5

git remote -v
查看远程仓库地址
git fetch --prune
拉取远程并清理已删除的远程分支引用
git log --oneline --graph
图形化查看提交历史
git reflog
查看 HEAD 移动记录,误操作后找回提交的救命稻草
git blame <file>
逐行查看代码最后修改人和提交

常见问题 FAQ 5

Q: 如何撤销上一次提交?
A: git reset --soft HEAD~1 撤销提交但保留改动在暂存区;git reset --hard HEAD~1 彻底丢弃(慎用)。已推送的提交用 git revert <sha>。
Q: git merge 和 git rebase 有什么区别?
A: merge 保留分支历史(生成合并提交),适合公共分支;rebase 线性化提交历史(重写提交),适合个人分支整理。
Q: 如何修改上一次提交的信息?
A: git commit --amend 修改最后一次提交的 message 或内容。如果已推送,需 git push --force-with-lease,注意团队协作安全。
Q: 如何暂存未完成的修改?
A: git stash 临时收起工作区改动,切分支救火后 git stash pop 恢复。git stash list 查看所有 stash。
Q: 如何解决合并冲突?
A: 冲突文件会标记 <<<<<<< HEAD 和 >>>>>>> branch,手动编辑后 git add <file> 标记已解决,再 git commit 完成合并。

💡 提示

  • reset --hard 会丢弃改动,执行前确认;真丢了用 git reflog 找回。
  • 已推送到共享分支的提交用 revert 撤销,不要 reset 后强推,否则坑队友。
  • switch/restore 是较新的命令,比 checkout 语义更清晰,老脚本仍可用 checkout。

官方参考来源

命令整理自以下官方文档,点击核对最新用法。

由 LaoHand 维护

公开更新于 2026年7月21日,内容持续校对官方文档。

发现错误?反馈给我们

命令或描述有误?提交 issue 帮助我们修正。

发现错误?反馈给我们