git version-control cheat-sheet workflow dev-reference

Git 核心速查表:常用命令、工作流与最佳实践

为开发者准备的全面 Git 速查表。掌握 git add, commit, push, branch, merge 以及 rebase,附带清晰示例与常见问题解答。

2026-04-12

Git 核心速查表:常用命令、工作流与最佳实践

Git 是世界上使用最广泛的版本控制系统。无论您是独立开发者还是大型团队的一员,掌握 Git 对于管理代码历史和高效协作都至关重要。

本速查表可作为 Git 常用命令和工作流的快速参考。


1. 基础工作流

进行更改并将其保存到存储库的核心周期。

命令 说明 示例
git init 在本地初始化一个新的 Git 仓库 git init
git clone 创建远程仓库的副本 git clone [url]
git add 将更改暂存,准备进行下次提交 git add . (添加所有)
git commit 将暂存的更改保存到历史记录中 git commit -m "feat: login"
git status 查看当前工作目录的状态 git status
git push 将本地提交上传到远程仓库 git push origin main
git pull 从远程获取并合并更改 git pull origin main
git fetch 从远程下载更改(但不合并) git fetch origin

2. 分支与合并

分支允许您在隔离的环境中开发不同的功能或进行修复。

  • 创建分支git branch [name]
  • 切换分支git checkout [name] (或 git switch [name])
  • 创建并切换git checkout -b [name]
  • 合并分支git merge [name] (将 [name] 合并到当前分支)
  • 变基分支git rebase [name] (将当前分支的提交重新应用在 [name] 之上)
  • 删除分支git branch -d [name]

3. 撤销更改

如何修复错误或恢复到之前的状态。

  • 反转提交git revert [commit-hash] (创建一个新的提交来撤销之前的更改)
  • 重置 (Soft)git reset --soft HEAD~1 (撤销提交,但保留已暂存的更改)
  • 重置 (Hard)git reset --hard HEAD~1 (撤销提交并删除所有更改!请谨慎使用)
  • 暂存更改git stash (临时隐藏未提交的更改)
  • 弹出暂存git stash pop (取回之前暂存的更改)

4. 检查与调试

用于查看历史记录和查找错误的工具。

命令 说明
git log 显示提交历史记录
git diff 显示提交之间或工作区之间的差异
git blame [file] 查看文件中每一行是由谁修改的
git show [commit] 显示特定提交的详细信息
git bisect 使用二分查找定位引入错误的提交

常见问题 (FAQ)

Q: Merge (合并) vs Rebase (变基):我该用哪一个?

A: Merge 会创建一个新的“合并提交”,并保留完整的历史记录和时间顺序。Rebase 通过将您的提交移动到目标分支的最顶端来重写历史,从而创建一个更整洁、线性的历史。准则:永远不要在公共分支上使用 Rebase;在推送代码前,可以用它来整理本地的提交记录。

Q: 如何解决合并冲突?

A: 当发生冲突时,Git 会标记受影响的文件。1. 打开文件并寻找 <<<<<<<=======>>>>>>>。 2. 手动编辑代码,保留您想要的部分。 3. 执行 git add [file]。 4. 执行 git commit

Q: 什么是 "detached HEAD" (游离头指针)?

A: 这意味着您检出了一个特定的提交或标签,而不是一个分支。您当前不在任何分支上。如果您在此时进行新提交,切换分支后这些提交将会丢失。要保存更改,请执行:git checkout -b new-branch-name

Q: .gitignore 的最佳实践是什么?

A: 始终忽略环境机密文件 (.env)、构建产物 (dist/build/)、依赖库文件夹 (node_modules/) 以及操作系统生成的文件 (.DS_Store)。建议为您使用的语言或框架选用 GitHub 提供的官方模板。


Tool3M 上的相关工具

  • 首页:发现更多开发者工具和参考资料,助力您的开发效率。