Lazygit 使用指南

Lazygit 使用指南

Wavky 距离退休还剩: 30年

Lazygit 是一个终端下的 Git 客户端,通过 TUI(Terminal User Interface)把 Git 的常用操作可视化,用快捷键驱动替代手敲命令。暂存、提交、分支管理、交互式 rebase、冲突解决……基本上日常用到的 Git 操作都能在里面完成,而且比命令行直观得多。


安装

平台 命令
macOS brew install lazygit
Arch Linux sudo pacman -S lazygit
Ubuntu/Debian sudo apt install lazygit
Windows (Scoop) scoop install lazygit
Windows (Winget) winget install JesseDuffield.lazygit

安装完成后,在 Git 仓库目录下执行 lazygit 即可启动。


界面概览

启动后的界面分为左右两大区域,左侧是 5 个面板,右侧是对应的详情视图(diff、日志等)。

左侧面板从上到下依次是:

编号 面板 说明
1 Status 当前仓库状态、所在分支
2 Files 工作区文件变更
3 Branches 本地分支、远程分支、Tags
4 Commits 当前分支的提交历史
5 Stash Stash列表

面板导航:

  • 数字键 1 - 5:快速跳转到对应面板
  • / :在相邻面板间切换
  • / j / k:在列表中上下移动
  • [ / ]:切换面板内的子标签页(如 Branches 面板下的 Local、Remotes、Tags)

基础操作

文件暂存与提交

在 Files 面板(按 2)中操作:

快捷键 功能
space 暂存 / 取消暂存选中文件
a 暂存 / 取消暂存所有文件
enter 进入文件,按行或按块暂存
c 提交已暂存的更改
A 修改最后一次提交(amend)
C 使用编辑器编写提交信息并提交

enter 进入单文件暂存视图后,可以用 space 逐行暂存,用 v 切换范围选择模式来暂存多行。按 tab 可在暂存区和工作区之间切换查看。

推送与拉取

快捷键 功能
P(大写) Push 推送
p(小写) Pull 拉取

首次推送新分支时,lazygit 会提示设置上游分支。

其他文件操作

快捷键 功能
d 查看丢弃更改选项
e 用外部编辑器打开文件
s Stash所有更改
S 查看Stash选项(可选择仅Stash暂存/未暂存的更改)
` 切换文件树 / 平铺视图

分支管理

在 Branches 面板(按 3)中操作:

快捷键 功能
space 切换到选中分支
n 基于当前分支创建新分支
d 删除分支
M 将选中分支合并到当前分支
r 将当前分支rebase到选中分支
R 重命名分支
f 快进合并(fast-forward)
u 查看上游分支选项
- 切换到上一个分支

Branches 面板通过 [ / ] 可切换到 Remotes 和 Tags 子标签页,管理远程分支和标签。


交互式 Rebase

在 Commits 面板(按 4)中,选中某个提交后可以进行交互式rebase操作:

快捷键 功能 说明
e Edit 标记为编辑,暂停rebase让你修改
s Squash 压缩到前一个提交,合并提交信息
f Fixup 压缩到前一个提交,丢弃当前提交信息
d Drop 删除提交
r Reword 修改提交信息
p Pick 保留提交(在rebase过程中标记)
ctrl+j Move down 将提交向下移动(即更早执行)
ctrl+k Move up 将提交向上移动(即更晚执行)

操作流程:选中想要修改的提交 → 按对应快捷键标记操作 → lazygit 自动执行rebase。整个过程不需要手动编辑 rebase todo 文件。


Cherry-pick

在 Commits 面板中:

  1. 移动到想要复制的提交,按 C(大写)标记
  2. 切换到目标分支
  3. V(大写)执行粘贴(cherry-pick)

ctrl+r 可以重置已标记的选择。支持一次标记多个提交再统一粘贴。


Stash 管理

创建Stash(在 Files 面板):

快捷键 功能
s Stash所有更改
S 查看Stash选项(可选择范围)

管理Stash(在 Stash 面板,按 5):

快捷键 功能
space 应用Stash(保留Stash记录)
g 弹出Stash(应用并删除)
d 删除Stash
n 从Stash创建新分支
r 重命名Stash

冲突解决

当合并或rebase产生冲突时,lazygit 会在 Files 面板中标记冲突文件。按 enter 进入文件后,可以可视化地选择保留哪一方的更改:

快捷键 功能
space 选择当前冲突块
b 选择所有冲突块
/ 在冲突块之间切换
z 撤销上一步冲突解决
M 查看合并选项

快捷键速查

全局

快捷键 功能
P Push
p Pull
z 撤销上一步操作
Z 重做
R 刷新
? 查看当前面板的所有快捷键
x 打开操作菜单
+ / - 切换屏幕模式(正常/半屏/全屏)
: 执行 Shell 命令
ctrl+r 切换到最近访问的仓库
q 退出

Files 面板

快捷键 功能
space 暂存 / 取消暂存
a 全部暂存 / 取消
enter 按行暂存
c 提交
A Amend
d 丢弃更改
e 编辑文件
s / S Stash / Stash选项

Branches 面板

快捷键 功能
space 切换分支
n 新建分支
M 合并
r rebase
d 删除
R 重命名
f 快进

Commits 面板

快捷键 功能
e 编辑提交
s Squash
f Fixup
d Drop
r 修改提交信息
C Cherry-pick 复制
V Cherry-pick 粘贴
ctrl+j/k 上下移动提交

配置

lazygit 的配置文件路径因平台而异,执行 lazygit -cd 可以快速查看当前平台的配置目录:

平台 路径
Linux ~/.config/lazygit/config.yml
macOS ~/Library/Application Support/lazygit/config.yml
Windows %LOCALAPPDATA%\lazygit\config.yml

此外,在仓库根目录创建 .lazygit.yml 可以设置仓库级的配置。

常用配置示例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
gui:
# 显示文件图标(需终端支持 Nerd Fonts)
nerdFontsVersion: "3"
# 界面语言
language: "zh-CN"
# 主题配色
theme:
activeBorderColor:
- green
- bold
inactiveBorderColor:
- default

git:
# 自动拉取远程更新
autoFetch: true
# 自动拉取间隔(秒)
autoFetchInterval: 120

os:
# 指定外部编辑器
editCommand: "code"
editCommandTemplate: "{{editor}} --goto {{filename}}:{{line}}"

完整配置项参考:Config docs

  • Title: Lazygit 使用指南
  • Author: Wavky
  • Created at : 2026-02-08 17:15:01
  • Updated at : 2026-02-09 00:03:23
  • Link: https://wavky.top//lazygit-user-guide/
  • License: All Rights Reserved © Wavky