最基本的版本控制
使用x
可以查看每个pane的cheatsheet.
最基本的就四条命令:
git add .
git commit -m
git push
git pull
在Lazygit的File Pane中, 直接a/c/P/p
就可以解决.
回滚操作
- 第一: 基于当前分支新建分支 (branch pane中用
n
) - 第二: 切换到新建分支 (branch pane中用空格)
- 第三: 回滚到特定commit (commit pane中用
g
, 基于git reset
) - 第四: 选择暂存区中需要保留, 或者舍弃的修改 (FIle Pane中用
d
或空格) - 第五: 将暂存区中的修改进行commit, 就可以在回滚分支进行开发.
如果只回滚一个文件, 那么在Commit Pane中, 选中某个commit, 用Enter可以查看这次commit修改的所有文件, 选中要回滚的文件用c
检出即可.
查看修改
如果需要查看某一个文件的所有commit修改历史, 可以在Commit Pane中, 用
ctrl+s
进行过滤, 注意过滤需要输入文件的路径, 而不是文件名称.如果需要查看commit的修改历史:
查看一次commit:
用
o
, 可以在远程仓库中用html查看编辑历史.如果需要导出html文件, 可以使用
diff2html
工具, 用如下命令可以生成报告:diff2html --su open -s side -F check.html -- -M <commit哈希值>
cherry-pick
Cherry-pick的作用是将其他分支中若干个commit作用于自己选择的分支中.
具体操作步骤是:
- Commit Pane中用
c
复制commit. - 切换分支
- Commit Pane中用
v
粘贴.
interactive-rebasing
在commit pane中对于某次commit用e
, 这次commit上面的commit进入interactive-rebasing的状态.
每个commit有四种状态:
pick
: 保留这次commitsquash
: 和下面的commit合并, 并且commit的信息合并drop
: 删除commitfixup
: 和下面的commit合并, 并且作为fixup的commit信息删除
选择不同commit的状态之后, 用m
, 然后continue
即可批量操作.
使用r
可以对某次commit进行修改信息, 修改完之后, 使用m
, 然后continue
, 就可以使修改生效.