lazygit一个git管理工具,喜好用终端管理工程代码的朋友,可以尝试。其他可视化工具可以用SourceTree。
官网地址: GITHUB
特性/优势
- 轻松添加文件
- merge冲突处理
- 轻松切换分支
- 浏览diffs(branch、commits、stash)
- 快速push/pull
- 压缩/修改commit
如何使用
安装(Homebrew方式)
brew tap jesseduffield/lazygit
brew install lazygit
其他方式参考官网。
注意: 不支持下面的语法,更好的效果请见: github
常用快捷键
- 全局
←→↑↓/hjkl: 切换模块(导航)
PgUp/PgDn or ctrl+u/ctrl+d: 浏览diff
面板
(for PgUp and PgDn, use fn+up/fn+down on osx)
q: 退出
p: pull
shift+P: push
- 状态面板
e: 编译配置信息
o: 打开配置信息
- 文件面板
space: 文件的暂存状态切换
a: 所有文件暂存/不暂存
c: 提交
shift+C: 使用编辑器提交
shift+S: 储蓄文件
t: 添加补丁 (i.e. pick chunks of a file to add)
o: 打开
e: 编辑
s: sublime方式打开 (requires 'subl' command)
v: vscode方式打开 (requires 'code' command)
i: 添加到.gitignore
d: 删除没有tracked的文件/ checkout tracked的文件
shift+R: 刷新文件
shift+A: 终止merge
- 分支面板
space: 切换分支
f: 强制切换分支
m: merge到当前打开分支
c: 输入分支名称方式checkout
n: 新建分支
d: 删除分支
D: 强制删除分支
- Commits面板
s: 压缩commits (仅对第一个commit有效)
r: commit重命名
shift+R: 使用编辑器重命名commit
g: 重置到某个commit
- 储蓄面板
space: 应用
g: 推出
d: 删除
- 弹出面板
esc: 关闭/取消
enter: 确认
tab: 换行 (编译状态下)
- 处理合并冲突(Diff面板zz)
←→/hl: 导航/移动
↑↓/kj: 选择大块
space: 选择某块冲突
b: 选择全部
z: 回撤 (only available while still inside diff panel)
其他
视频教程参考: here