lazygit的学习与使用
lazygit Learning
lazygit 安装和使用以及多场景应用
1. Lazygit背景
Git的强大是所有开发者心中的利器
LazyGit 是一个使用 Go 语言编写的终端界面 Git 客户端,它以一种轻量级、高效且用户友好的方式提供了对 Git 仓库的全面管理.
它能为 git 命令提供一个终端图形界面,用户可以通过键盘快捷键或鼠标快速地完成各种 Git 操作,如提交、合并、推送、查看或切换分支等。
2. Lazygit安装
官网提供了多种系统版本和安装方式,下面提供常见系统的个别安装,具体的请参考官方github
brew install lazygit# Add the extras bucket
scoop bucket add extras
# Install lazygit
scoop install lazygit使用gah/go进行安装
# gah
gah install lazygit
# go
go install github.com/jesseduffield/lazygit@latest3. Lazygit基础使用
3.1 git 修改操作
假设你修改了文件,并进行Ctrl+S保存,lazygit会自动检测到你的修改,最好是多改几个文件,多修几行
- 在[2]中File-Worktrees-Submodules中的
File中,可以看到当前修改的文件是01-基础教程,前面有M表示正在修改
Note
- 你可以直接使用
Space空格键,直接相当于git add file.txt文件 - 你可以使用
a,表示直接使用git add ./
- 点击当前的文件,然后按
Enter回车键,进入文件修改界面 - 就是[0]状态栏中显示的样子(分为Ubstaged changes和Staged Changes)
@@ -a,b +c,d @@ 表示: 旧文件从第 a 行开始的 b 行,被新文件中从第 c 行开始的 d 行替换。
- 每一个
@@..@@都是一个hunk,光标停在某在hunk上
| 操作 | 按键 |
|---|---|
| stage 当前 hunk | space |
| discard 当前 hunk | d |
| 全文件 stage | 回到文件列表 space |
这就是lazygit推荐的最小修改单位
当然你可以使用VSCode,进行精细的编辑,但是终端就是讲究效率,同时忠于git
3.2 git commit操作
在上一步进行修改和git add之后,就是进行git commit操作了
选中文件之后,按c键,会看到commit要求的message提示
- 添加commitxx信息,然后按
Enter回车键,进行commit操作 相当于git commit -m "message0" - description可以不写,但是最好写上,方便后续的回溯
如何使用git commit -amend?
Lazygit给了更方便的操作,在[04]工作栏中点击commit,然后会出现Amend commit提示,点击确定即可追加commit,commit的信息不变,但是commit的hash会发生改变
仅仅修改提交信息
如果你代码没问题,只是觉得刚才的 Commit Message 写得太烂(或者有错别字),请按以下步骤操作:
- 按 4 进入 Commits 面板。(或者点击4的commit即可)
- 选中最顶端的那条提交(也就是你刚刚完成的那条)。
- 按
r进入修改信息界面。修改之后按Enter确认即可
高级操作
- 只提交一部分修改
- [02]选择文件
Enter进入git diff界面- 在某个块上保存,然后按
Enter回车键,会自动git add,然后按c键,进行commit操作 这样就可以将一个文件拆分多个commit
同样的道理也可用于每一行的操作,主要指修改的部分



