Git 常用命令清单:日常开发够用的 30 个
Git 命令很多,日常开发真正高频用的就三十来个。按场景整理成清单,忘了就来翻。
仓库与提交
git init # 当前目录初始化为仓库
git clone 仓库地址 # 克隆远程仓库
git status # 查看工作区状态
git add . # 暂存全部改动
git commit -m "说明" # 提交
git log --oneline # 查看提交历史(一行一条)分支操作
git branch # 列出本地分支
git branch 新分支名 # 新建分支
git checkout 分支名 # 切换分支
git checkout -b 新分支 # 新建并切换
git merge 分支名 # 把分支合并到当前分支
git branch -d 分支名 # 删除已合并的分支远程仓库
git remote -v # 查看远程仓库地址
git push origin 分支名 # 推送到远程
git pull # 拉取远程更新并合并
git fetch # 只拉取不合并撤销与回滚
| 场景 | 命令 |
|---|---|
| 文件改了但还没 add,想撤销 | git checkout -- 文件名 |
| 已经 add 了,想撤出暂存区 | git reset HEAD 文件名 |
| 提交信息写错了 | git commit --amend -m "新说明" |
| 想回退到某个提交(本地) | git reset --hard 提交号 |
| 已经 push 了,想撤销这次提交 | git revert 提交号 |
注意 reset --hard 会丢掉改动,别对已经推送的提交用;远程回滚用 revert,它会生成一次反向提交,历史不会乱。
查看与排查
git diff # 看未暂存的改动内容
git diff --cached # 看已暂存的改动
git show 提交号 # 看某次提交改了什么
git blame 文件名 # 每行代码是谁改的
git stash # 临时保存改动
git stash pop # 恢复临时保存提交流程建议
提交信息写清楚"做了什么",别写 "update" 这种没信息量的。一次提交只做一件事,方便以后回滚和排查。分支名用语义化命名:feature/登录、fix/首页报错,一眼看懂在干嘛。
这些命令覆盖了单人开发 95% 的场景。团队协作再补两个:git rebase(整理提交历史)和 git cherry-pick(挑某个提交合过来),用到时再查不迟。