lazygit 上手指南:每天 Git 操作只需要 5 个键的终端可视化客户端
【免费下载链接】lazygitsimple terminal UI for git commands项目地址: https://gitcode.com/GitHub_Trending/la/lazygit
lazygit 是一个跑在终端里的 Git 可视化客户端,把暂存、提交、分支、变基这些日常操作全部映射成面板加快捷键,让你不用再背长命令行。只要机器上装了 Git,装好它之后,在任何仓库目录里输入lazygit就能进入界面。
💢 为什么命令行 Git 让人头疼
先说两个几乎每个人都踩过的坑。
第一次是整理提交历史:你运行git rebase -i,它却弹开编辑器让你手改一个 TODO 文件,把pick改成squash还得担心缩进写错。第二次是只暂存一个文件里的两行代码:git add -p会一路追问 y/n/q/s/e,按错一个字母整个块就被加进暂存区。
这类操作的共同点是:思路很清楚,但命令拼写和交互细节总差一点。lazygit 的做法是把它们收敛成界面——文件、分支、提交各占一块面板,你想干什么就按对应的那一个键,拼错参数这种事从此不存在。
⏱️ 3 分钟装好 lazygit
三种装法,按你的系统挑一种即可:
# macOS(Homebrew) brew install lazygit # Windows(Scoop) scoop install lazygit # 从源码编译(任意平台,需要 Go 环境) git clone https://gitcode.com/GitHub_Trending/la/lazygit cd lazygit go install装完验证两步:终端里跑lazygit --version能打印版本号就说明命令可用;然后cd进任意 Git 仓库目录,输入lazygit,看到分块界面的那一刻,安装就算完成了。没有仓库?先git init一个空目录再进也可以。
🖥️ 第一次打开 lazygit:看懂六块面板
界面左侧从上到下是一列窄面板,右侧占大半屏幕的是主视图。六块内容按你视线的顺序讲:
- 状态栏(顶部):显示当前仓库路径和所在分支,按 R 可以随时刷新 Git 状态。
- 文件面板:列出工作区有改动的文件,文件名旁边的图标区分已暂存和未暂存。工作树、子模块与它共用这块区域,按
[]可以切换标签页。 - 分支面板:本地分支都在这里,远程分支、标签作为它的标签页收纳在同一个格子中。
- 提交历史面板:当前分支的提交列表,带图形化的分支线条,能看出谁从哪个分叉点长出来。
- 贮藏面板:stash 列表,随时可以恢复或删掉某次贮藏。
- 右侧主视图:所有面板的"放大镜"。选中文件就显示它的 diff,选中提交就显示这个提交改动的文件清单。
两个通用习惯先建立起来:方向键或 j/k 在各面板内移动光标,Tab 键在面板之间跳转,/键对任何列表都能做文字过滤。
⌨️ 每天最常用的 5 个操作
下面每个操作都按"场景 → 按键 → 结果"来写,建议跟着做一遍。
- 暂存改动。在文件面板选中文件按 Space,文件就进入已暂存状态;再按一次可以取消。只想要其中几行的话,选中文件按 Enter 进入暂存视图,用左右键在代码块间移动,Space 按块暂存,也可以逐行勾选。
- 提交。文件面板按
c,底部弹出提交信息输入框,回车即完成git commit。想偷懒一次性全暂存,先按a再按c即可。 - 切换分支。把光标移到分支面板,目标分支上按 Space 完成检出;懒得找就按
c直接输入分支名,连按两次-还能瞬间回到刚才所在的分支。 - 查历史。在提交历史面板用 j/k 上下翻,选中某个提交按 Enter,右侧主视图立刻列出该提交动过的文件,选中文件就能看到具体 diff。
- 看 diff。焦点在任何文件上,右侧就是它的改动内容;
{和}可以缩小或扩大 diff 的上下文行数。想对比两个引用(比如当前分支 vs main),按W打开 diff 菜单选择比较对象。
🚑 遇到难题时:rebase、冲突、误提交怎么救
改写历史。发现提交信息写错了,选中该提交按r重写消息;想把三个提交捏成一个,选中它们按s压缩到最下面那个提交上。需要更系统地整理时,对某个提交按i启动交互式变基,此后每个提交前会显示它的操作:s压缩、f修正(丢弃信息)、d删除、ctrl+j/ctrl+k上下移动顺序,改完按m呼出变基菜单选继续。
解决冲突。合并或变基撞出冲突后,文件面板里冲突文件会被标出来,按M查看处理选项,或直接进入文件逐个冲突块处理:上下键选"我的版本"还是"对方版本",左右键在冲突块之间跳转,改完按m选择继续合并。
手滑了。lazygit 有个全局后悔键:按z撤销上一个 Git 命令,Z重做,它靠 reflog 工作,所以重命名分支、变基这类操作都能回滚。要反向抵消某个已推送的提交,选中它按t生成一个 revert 提交,不破坏历史。还有一类经典事故——忘记建新分支就往 main 上提交了几笔,选中提交按N,这些提交会被整体搬到一个新分支上,main 恢复干净。
🎛️ 按自己的习惯改:快捷键与界面配置
配置文件是 YAML,位置:Linux 和 macOS 在~/.config/lazygit/config.yml,Windows 在%APPDATA%\lazygit\config.yml。文件不存在就手动建一个,写不确定的键名时参考仓库里的完整配置文档 docs/Config.md。
最小可用示例,改主题色、切中文:
gui: theme: activeBorderColor: ['red'] language: zh-CN所有键位都能在keybinding:节点下重写,比如把撤销键从z改成u。懒得查文档时,在 lazygit 里按alt+shift+c会直接用外部编辑器打开配置文件,改完重启即生效。
❓ 常见问题速查
- 界面全是英文,想显示中文?配置文件里加
gui.language: zh-CN(可用值还有 ja、ko、ru 等,看 中文快捷键文档 里收录的语言列表)。 - 想要的分支、贮藏面板不见了?有些面板被收进标签页了,用
[和]在同一格子里翻页;按0可以把焦点拉回右侧主视图。 - 当前有哪些按键可用?底部一行常驻提示常用键,按
?会弹出当前面板的完整键位菜单。 - 想退出?
q或ctrl+c,两个都行。
从"记不住 rebase 参数"到"按一个 i 就开工",lazygit 做的事情其实只有一件:把 Git 的每一次交互都变成看得见的选项。建议先拿一个测试仓库按上面"每天 5 个操作"过一遍,一周之内它就会变成你打开终端后的默认姿势。想深入某个配置项或全部键位,直接翻 官方配置文档 和 中文快捷键表。
【免费下载链接】lazygitsimple terminal UI for git commands项目地址: https://gitcode.com/GitHub_Trending/la/lazygit
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考