2026年我还在用的10个Git命令,第7个省了我好多时间

王尘宇 实用技巧 2

写了8年代码,Git这些命令我用到现在还在用,有些是真的能省时间。今天整理10个我自己天天敲的Git技巧,都是2026年验证过好用的。

1. git stash push -m "备注" 比单纯 stash 好用

以前我老用 git stash,时间一长就忘了里面存的是啥。后来养成习惯加个备注:

git stash push -m "首页样式改到一半"

等回来的时候 git stash list 一眼就能看到每个暂存是干嘛的。2026年了,Git stash 已经支持 --staged 参数,可以单独暂存已暂存区的文件,不用再费劲把工作区和暂存区分开操作。

2. git log --oneline --graph --all 看分支图

这个我自己设了个别名 git tree,敲起来方便:

git config --global alias.tree "log --oneline --graph --all --decorate"

每次合并前跑一下这个命令,整个项目的分支结构一目了然。比看GitHub那个网络图快多了,而且不用切到浏览器。

3. git reflog 救命的

上周我 rebase 完发现少了一个提交,差点以为丢了。用 git reflog 一查,那个提交的 hash 还在:

git reflog
# 找到那个提交的 HEAD@{n}
git cherry-pick 那个hash

reflog 默认保留90天,够你发现错误了。2026年 Git 2.48 版本把 reflog 的过期策略改得更灵活了,可以在配置里自定义保留天数。

4. git bisect 二分定位bug

3个月前我们项目出了一个回归bug,不知道是哪次提交引入的。我用 git bisect 在200多个提交里二分查找,不到10步就定位到了:

git bisect start
git bisect bad HEAD
git bisect good v2.1.0
# Git 自动跳到中间那个提交
# 测试,如果还有bug就 git bisect bad
# 如果没了就 git bisect good
# 重复几次就找到了

这比一个个提交排查效率高太多了。

5. git worktree 同时开多个分支

以前切分支要 stash 或者 commit 当前改动,烦得很。git worktree 让我在另一个目录同时开一个分支,两个窗口各干各的:

git worktree add ../project-hotfix hotfix-2026
cd ../project-hotfix
# 这里就是 hotfix-2026 分支,互不干扰

用完删掉就行:git worktree remove ../project-hotfix。现在修紧急bug和开发新功能可以同时进行,不用来回切。

6. git rebase -i HEAD~N 整理提交历史

我习惯在提PR之前用 git rebase -i HEAD~5 把最近5个提交整理一下。把"fix typo""改个小东西"这种碎提交 squash 成一个有意义的提交:

git rebase -i HEAD~5
# 编辑器里把想合并的 commit 前面的 pick 改成 squash

合并完之后 commit 历史干净很多,review 的人看起来也舒服。

7. git diff --word-diff 看具体改了啥词

这个是我最常用的 diff 方式。普通 diff 显示整行变化,但有时候只改了一个变量名,--word-diff 直接标出来改了哪个词:

git diff --word-diff=color

差别立马就清楚了,特别是代码review的时候,不用瞪着眼睛在一大段绿红里找改了哪里。

8. git blame -L 只看某几行

看一个长文件的时候,不需要 git blame 整个文件。直接指定行号范围:

git blame -L 120,150 src/main.go

只显示120到150行是谁改的、什么时候改的。配合 --date=short 日期格式更清爽。

9. git switch 和 git restore 替代 checkout

Git 2.23 就引入了,但我发现到2026年还是有很多人在用 checkout。实际上 git switch 专管分支切换,git restore 专管文件恢复,语义清楚多了:

git switch feature-2026    # 切分支
git switch -c new-branch   # 新建并切过去
git restore --staged .     # 取消暂存
git restore .              # 丢弃工作区改动

再也不会搞混 checkout 到底是在切分支还是在恢复文件。

10. git commit --fixup + autosquash

PR review 之后经常要改一个小地方,但是不想加一个新的"根据review修改"的提交。用 fixup:

git commit --fixup=HEAD
# 然后 rebase 的时候自动合并
git rebase -i --autosquash HEAD~5

fixup 提交会自动排到对应的原提交后面,并且预置为 squash 模式。改完代码直接跑这个,比手动 rebase 快多了。

以上10个技巧是我2026年每天都在用的,没有花里胡哨的东西,就是实实在在能省时间的。学会其中三五个,日常敲 Git 的效率就能上一个台阶。

标签: Git Git技巧 版本控制 开发效率 编程技巧 2026

发布评论 0条评论)

  • Refresh code

还木有评论哦,快来抢沙发吧~