贴两个不错的教程.
https://github.com/pcottle/learnGitBranching
https://learngitbranching.js.org/
图解:
https://segmentfault.com/a/1190000018272902
1. git reset # 复位
对仓库进行操作
git reset HEAD # 将仓库reset到HEAD处
git reset commit-id --hard # 将仓库复位到commit-id处, 且本地修改代码抛弃
git reset commit-id --soft # 将仓库复位到commit-id处, 本地修改保留
git reset HEAD^ # 复位到 HEAD前一个commit
2. git checkout # 签出
git checkout branch-name # 签出目标分支代码
git checkout -b new-branch # 创建并签出该分支
3. git revert # 还原
git rever commit-id # 还原/回滚 commit-id代码, 并在HEAD处新增一个commit
故可以连续回滚/还原, 按新旧方向回滚
4. git pull
5. git push
6. git fetch
7. git blame # 责备...?
git blame xxx.c # 可查看每一行的commit-id及作者
8. git bisect # binary search
二分法查bug?