Learn Git Branching
Git 在线学习网站
一、主要
1. 基础篇
1.1 Git Commit
git commit
git commit
1.2 Git Branch
git checkout -b bugFix
或者
git branch bugFix
git checkout bugFix
1.3 Git Merge
git checkout -b bugFix
git commit
git checkout main
git commit
git merge bugFix
1.4 Git Rebase
git checkout -b bugFix
git commit
git checkout main
git commit
git checkout bugFix
git rebase main
2. 高级篇
2.1 分离 HEAD
git checkout c4
2.2 相对引用 (^)
git checkout bugFix^
2.3 相对引用2 (~)
git branch -f bugFix HEAD~2
git branch -f main c6
git checkout HEAD^
2.4 撤销变更
git reset main
git checkout pushed
git revert pushed
3. 高级篇
3.1 Git Cherry-pick
git cherry-pick c3 c4 c7
或者
git cherry-pick bugFix c4 another
3.2 交互式 Rebase
git rebase -i overHere
或者
git rebase -i HEAD~4
或者
git rebase -i main~4
4. 高级篇
4.1 只取一个提交记录
git rebase -i main
git branch -f main bugFix
或者
git checkout main
git cherry-pick bugFix
4.2 提交的技巧 #1
git rebase -i caption~2
git commit --amend
git rebase -i HEAD~2
git branch -f main caption
4.3 提交的技巧 #2
git checkout main
git cherry-pick newImage
git commit --amend
git cherry-pick caption
4.4 Git Tag
git tag v0 c1
git tag v1 HEAD^
git checkout HEAD^
或者
git checkout c2
或者
git checkout main~1
或者
git checkout main^
4.5. Git Describe
git commit
5. 高级话题
5.1 多次Rebase
git rebase main bugFix
git rebase bugFix side
git rebase side another
git branch -f main another
5.2 两个父节点
// An highlighted block
git branch bugWork HEAD~^2~
或者
git checkout HEAD~^2~
git branch -f bugWork HEAD
git checkout main
5.3 纠缠不清的分支
git checkout one
git cherry-pick c4 c3 c2
git checkout two
git cherry-pick c5 c4 c3 c2
git branch -f three c2
// 可以查看网站的答案
show solution
二、远程
1. 远程仓库
1.1 Git clone
git clone
1.2 远程分支
git commit
git checkout o/main
git commit
1.3 Git Fetch
git fetch // 可以认为是将远程仓库中新增的东西下载到本地仓库
1.4 Git Pull
git pull // git pull = git fetch + git merge xxx
1.5 模拟团队合作
git clone
git fakeTeamwork 2
git commit
git pull
1.6 Git Push
git commit
git commit
git push
1.7 偏离的提交历史
git clone
git fakeTeamwork
git commit
git pull --rebase // git pull --rebase = git fetch + git rebase
git push
1.8 锁定的Master
git reset --hard o/main
git checkout -b featurer c2
git push origin feature
2. 远程仓库高级操作
2.1 推送主分支
git checkout main
git pull
git checkout side1
git rebase main
git checkout side2
git rebase side1
git checkout side3
git rebase side2
git checkout main
git push
或者
git fetch
git rebase o/main side1
git rebase side1 side2
git rebase side2 side3
git rebase side3 main
git push
2.2 合并远程仓库
git fetch
git rebase o/main main
git merge side1
git merge side2
git merge side3
git push
或者
git checkout main
git pull
git merge side1
git merge side2
git merge side3
git push
2.3 远程追踪
git checkout -b side o/main
git commit
git pull --rebase
git push
2.4 Git Push的参数
git push origin main
git push origin foo
2.5 Git Push的参数2
git push origin foo:main
git push origin main^:foo
或者
git push origin main^:foo
git push origin foo:main
2.6 Git Fetch的参数
git fetch origin c3:foo
git fetch origin c6:mian
git checkout foo
git merge main
2.7 没有Source的Source
git push origin :foo
git pull origin :bar
2.8 Git Pull的参数
git pull origin foo = git fetch origin foo + git merge o/foo
git pull origin bar:bugFix = git fetch origin bar:bugFix + git merge bugFix
git pull origin c3:foo
git pull origin c2:side
标签:
git
本文转载自: https://blog.csdn.net/weirdo_demon/article/details/140971885
版权归原作者 哆啦ei孟 所有, 如有侵权,请联系我们删除。
版权归原作者 哆啦ei孟 所有, 如有侵权,请联系我们删除。