分支
git checkout 分支 # 切换分支
git checkout -b 分支 # 创建并切换分支
git merge bugFix # 将bugFix分支合并到当前分支
git rebase master # 将所在分支rebase到master分支下
相对引用
git checkout master^ # 切换到master的父节点
git checkout master^^ # 切换到master的父节点的父节点
git checkout master~ # 切换到master的父节点
git checkout HEAD~5 # 切换到HEAD的第5个父节点
git branch -f master HEAD~3 # 让master强制指向HEAD的第3级父提交
撤销变更
# reset 只能用在本地分支,不保留提交记录
# revert 保留提交记录并用一个新的提交记录来表明撤销变更
git reset HEAD~1 # 撤回到HEAD的1父节点
git revert HEAD~2 # 撤销掉第前3个commit
整理提交
git cherry-pick 提交 提交2 # 将一个或多个提交按顺序复制到本提交下面
交互式rebase
git rebase -i HEAD~3 # 整理向上3个提交