Skip to content

📋 速查表

创建与配置

命令说明
git init初始化新仓库
git clone <url>克隆远程仓库
git config --global user.name "名字"设置全局用户名
git config --global user.email "邮箱"设置全局邮箱
git config --list查看所有配置

日常操作

命令说明
git status查看当前状态
git add <file>添加文件到暂存区
git add .添加所有修改到暂存区
git add -p交互式添加(逐块选择)
git commit -m "信息"提交暂存区的内容
git commit -am "信息"添加已跟踪文件并提交
git diff查看工作区 vs 暂存区差异
git diff --staged查看暂存区 vs 最后提交差异
git log --oneline --graph --all查看好看的提交历史

分支操作

命令说明
git branch列出本地分支
git branch <name>创建新分支
git branch -d <name>删除已合并的分支
git branch -D <name>强制删除分支
git switch <branch>切换分支
git switch -c <name>创建并切换到新分支
git merge <branch>合并指定分支到当前分支
git merge --no-ff <branch>强制创建合并提交
git rebase <branch>变基到指定分支
git rebase -i HEAD~n交互式变基最近 n 个提交

远程操作

命令说明
git remote -v查看远程仓库
git remote add origin <url>添加远程仓库
git fetch origin下载远程更新(不合并)
git pull下载并合并远程更新
git pull --rebase下载并变基
git push推送到远程
git push -u origin <branch>推送并设置跟踪关系
git push --tags推送所有标签

撤销与修复

命令说明
git restore <file>丢弃工作区的修改
git restore --staged <file>从暂存区撤回
git reset --soft HEAD~1回退提交(保留暂存区和工作区)
git reset --mixed HEAD~1回退提交和暂存区(保留工作区)
git reset --hard HEAD~1全部回退(⚠️ 不可恢复)
git revert <commit>创建新提交来撤销指定提交
git reflog查看 HEAD 的所有移动记录
git stash临时保存当前修改
git stash pop恢复并删除最近的 stash

高级操作

命令说明
git cherry-pick <commit>精确移植指定提交
git bisect start开始二分查找定位 bug
git blame <file>查看文件每行的最后修改者
git grep <pattern>在代码中搜索
git tag -a <tag> -m "..."创建附注标签
git submodule add <url>添加子模块
git gc垃圾回收和打包
git clean -fd⚠️ 先用git clean -n预览删除未跟踪的文件和目录
git diff <a>..<b> --stat查看两个提交的文件变更统计
git shortlog -sn查看每个作者的提交数量

给新手的最后建议

💡 提示

  1. 勤提交—— 每完成一个小功能就提交一次,别攒着。提交越小,出了问题越容易定位。2. 写好提交信息—— 三个月后的你会感谢现在写清楚提交信息的你。3. 先 pull 再 push—— 养成好习惯,减少冲突。4. 不要怕犯错—— Git 几乎所有操作都可以撤销(除了git push --force和git reset --hard)。大胆尝试!5. 学会用 reflog—— 它是你的"后悔药",无论怎么搞砸,reflog 都能帮你找回。6. 多练多用—— Git 就像游泳,看教程看不会的,得自己下水扑腾。