如果你是一名开发人员(虽然我仅仅算是DevOps),在代码管理中必定对Git超级熟悉(别说你们还在用svn,如果是,那请绕路),应该能猜到你大致率会对 Git 又爱又恨,特别是刚接触时。Git的强劲就是对代码版本进行负载的管理,但那些冗长的命令(列如git rebase -i HEAD~3)和繁琐的操作流程,常常让人望而却步。今天要给大家推荐一款「拯救手残党」的工具 ——Lazygit,一个轻量却强劲的 Git 终端 UI,让你用键盘快捷键就能搞定 90% 的 Git 操作。
Lazygit是什么?
简单说,Lazygit 是 Git 的「可视化终端工具」。它不像图形化工具(如 Windows下的小乌龟,SourceTree,开发IDE结合Git)那样占资源,却能用简洁的终端界面展示仓库状态,通过快捷键完成提交、分支切换、变基等操作。用开发者的话说:「Git 很强劲,但当它变成日常工作中的『痛点』时,Lazygit 就是解药」。

它的设计理念很纯粹:让简单的操作更简单,让复杂的操作不复杂。无论是新手还是老手,都能快速上手。
如何安装 Lazygit?
Lazygit 支持几乎所有主流系统,看看官方提供可安装的操作系统列表:

安装方式简单到复制粘贴命令即可:
Mac/Linux(Homebrew):
brew install lazygit
Debian/Ubuntu:
对于新版本系统:
sudo apt install lazygit
旧版本系统可通过脚本安装:
# 自动获取最新版本并安装
LAZYGIT_VERSION=$(curl -s "https://api.github.com/repos/jesseduffield/lazygit/releases/latest" | grep -Po '"tag_name": *"vK[^"]*')
curl -Lo lazygit.tar.gz "https://github.com/jesseduffield/lazygit/releases/download/v${LAZYGIT_VERSION}/lazygit_${LAZYGIT_VERSION}_Linux_x86_64.tar.gz"
tar xf lazygit.tar.gz lazygit
sudo install lazygit -D -t /usr/local/bin/
通过 Go 安装:
如果你已安装 Go 环境,直接执行:
go install github.com/jesseduffield/lazygit@latest
安装完成后,在任意 Git 仓库中输入lazygit,就能启动这个神奇的工具了!
Lazygit的核心功能与使用方法
Lazygit 的强劲之处在于「用快捷键覆盖高频操作」,无需记忆复杂命令。下面通过 3 个实战场景,带你感受它的便捷。
文件暂存与提交
传统 Git 流程需要git add <文件>+git commit -m “备注”,而 Lazygit 只需 3 步:
- 启动 Lazygit 后,左侧「Files」面板会显示所有修改过的文件,用方向键选中目标文件;
- 按空格键:文件从「未暂存」变为「已暂存」(面板中文件颜色会变化);
- 按c 键:输入提交信息,回车完成提交。

如果想修改最后一次提交(列如漏了文件),选中已暂存文件后按A 键,直接补充到上一次提交中,无需git commit –amend命令。
交互式变基(Rebase)从此不怕冲突
变基是 Git 中强劲但复杂的功能,Lazygit 把它简化成「点点点」操作:

- 在「Commits」面板选中需要变基的起始提交,按i 键启动交互式变基;
- 此时会显示提交列表,按方向键选中要修改的提交:按r 键:重写提交信息;按f 键:将当前提交「合并」到上一个提交(fixup);按d 键:删除当前提交;按Ctrl+j/Ctrl+k:上下移动提交顺序;
- 操作完成后按ESC退出编辑,Lazygit 会自动执行变基,遇到冲突时直接在面板中编辑解决,无需手动运行git rebase –continue。
Stash 管理,临时保存工作区更灵活
开发中突然需要切换分支?用 Stash 临时保存当前修改:
- 在「Files」面板按s 键:快速将所有修改存入 Stash(无需git stash save);
- 按S 键(大写):显示更多 Stash 选项,列如「只暂存已跟踪文件」「只暂存未暂存内容」;
- 切换分支处理完问题后,回到原分支,在「Stash」面板选中刚才的记录,按a 键:应用 Stash 并保留记录,或按p 键:应用后删除记录(对应git stash pop)。

Gitflow 工作流一键适配
如果你团队使用 Gitflow(主分支、开发分支、功能分支规范),Lazygit 能直接集成:
- 先确保本地安装了gitflow工具;
- 在 Lazygit 的「Branches」面板按i 键:调出 Gitflow 菜单;
- 选择「Start Feature」:输入新功能分支名,自动从develop分支创建;
- 开发完成后,选择「Finish Feature」:自动合并回develop并删除功能分支,无需手动执行git flow feature finish。

为什么选择 Lazygit?
- 轻量高效:终端工具启动快,不占过多内存,适合远程服务器或低配置环境;
- 学习成本低:无需记忆命令,通过快捷键提示和可视化界面快速上手;
- 功能全面:从基础的提交、拉取,到复杂的变基、拣选(cherry-pick),甚至自定义命令,满足各种场景;
- 社区活跃:持续更新迭代,支持多语言(含中文),文档和教程丰富(官方教程包含 15 分钟快速入门视频,可以观看学习)。
写在最后
Lazygit 的本质不是替代 Git,而是让 Git 更好用。它把复杂的命令转化为直观的交互,让开发者专注于代码逻辑,而非版本控制的细节。
如果你也受够了记不住 Git 命令、在冲突中挣扎的日子,不妨试试 Lazygit—— 只需一个lazygit命令,开启你的「优雅版本控制」之旅吧。
当然,对于那些只玩Git命令行的高手们,我对他们的佩服那可是犹如滔滔江水,绵绵不绝!
(全文完)



















- 最新
- 最热
只看作者