网站链接:Learn Git Branching
基础篇
1.提交代码
git commit
2.创建分支
git branch bugFix
3.切换到bugFix分支:
git checkout bugFix
4.分支新建和切换同时完成:
git checkout -b bugFix
5.分支合并
git merge bugFix
git checkout -b bugFix
git commit
git checkout main
git commit
git merge bugFix
6.分支合并返回主线
git rebase bugFix
git checkout -b bugFix
git commit
git checkout main
git commit
git checkout bugFix
git rebase main
高级篇
1.分离HEAD
HEAD一半最开始指向最近一次提交记录,分离HEAD就是让它指向指定的提交记录。
git checkout C4
2.相对引用
没有可视化提交树的情况下,使用git log查看提交记录的哈希值,40位字符只需要输入前几位唯一标识即可。
使用 ^ 向上移动1个提交记录,把^加到引用名称的后面,表示让git寻找指定提交记录的父提交,比如切换到main的父节点 git checkout HEAD^
使用~<num>向上移动多个记录,如 ~3,完整如 git checkout HEAD~3
git checkout bugFix
git checkout C4
git checkout HEAD^
---
git checkout C4^
---
git checkout C4~1
3.强制修改分支位置
git branch -f main HEAD~3 //将main分支强制指向HEAD的第3级父提交
git branch -f main C6
git checkout HEAD^
git branch -f bugFix HEAD~1
4.撤销变更
将本地分支记录回退几个提交记录来实现撤销更改,撤回后被撤回的记录消失。
git reset HEAD~1
修改本地代码库的记忆,对远端分支不做影响,撤销更改并分享给别人。
git revert HEAD
上述命令撤销当前提交记录节点的修改,复制一份父节点,新的提交记录C2’与C1相同,可以推送到远程仓库与别人分享

git reset HEAD^
git checkout pushed
git revert HEAD