最近被安利了 lazygit,用了一阵子觉得是真香,上来给其他同学种个草。
说白了它就是给 git 套了层 TUI 壳,但体验比想象中舒服太多。最直观的是 staging 那一步,以前改完一堆文件想挑着提交,得反复 git add -p 然后一路 y/n,烦得不行。现在方向键在文件甚至 hunk 级别上移来移去,暂存回车、撤回一个键,看着界面心里就有数。
rebase 和冲突处理也省心。交互式 rebase 直接在面板里挑哪个提交要 squash、哪个要保留,不用再去跟那个编辑框搏斗。碰到合并冲突,冲突文件在界面里列得清清楚楚,点进去看 diff 比对,比手动翻 three-way 快不少。
最关键是零配置,纯 Go 编译的单二进制,丢哪里都能跑。我有时候 ssh 上服务器改点东西…,顺手 alias 一下就能用,不依赖任何桌面环境。喜欢在终端里干活的同学值得一试。