分支树

git log --graph --oneline --all --decorate

设置别名:git tree

git config --global alias.tree "log --graph --oneline --all --decorate"

分支

当前分支

git branch

查看当前状态

git status

合并分支

#切换回主分支
git checkout master

#合并目标分支
git merge 分支名

查看分支差异

git diff master..目标分支名 --stat

交互式变基

压缩n个提交

#根据需求设置提交数量
git rebase -i HEAD~6

然后会进入一个vim窗口
把要压缩的几个分支的pick改成s

保存并且退出当前vim会话

此时会进入下一个vim会话,这里可以 填写提交信息

建议此时使用ggdG 清空内容,再填写

保存后即压缩完成。

交互式变基进阶应用:改变提交者信息

git rebase -i HEAD~3

pick改成e

此时 git 会停在提交的时间点

此时

git commit --amend --author="作者名 <邮箱@outlook.com>" --no-edit

git rebase --continue