赞
踩
此篇是为了我以后回顾而写的,所以写的有点简单,也有点乱,如果想系统的学习,请去这个网站:https://learngitbranching.js.org
此网站常用命令
# 回到关卡选择页面
levels
# 查看答案
show solution
# 重新开始
level advance3
# 切换到bugFix分支
git checkout bugFix
# 让bugFix分支融合master分支的内容
git rebase master
# 合并这次与上次提交
git rebase -i HEAD~2
# 合并区间提交
git rebase -i start_point end_point
# 取消
git rebase --abort
pick 2748c 合并之后
s 2748c
s 2748c
fast-forward
,让我们先更新下代码再提交,我们可以用rebase
很快的解决这个问题。# 先拉取最新代码进行rebase
git pull --rebase origin master
# 然后再提交
git push
git pull
进行拉取代码,不用再指定后面的分支git branch --set-upstream-to=origin/master master
我在master分支来merge bugFix分支,那么我这个master分支就是在master分支的基础上再次融合bugFix分支的内容。
# 切换到master分支
git checkout master
# 融合bugFix分支的内容
git merge bugFix
c2
是通过git log
进行查看的 commit id
git checkout c2
移动提交记录。也可以理解为回滚,回滚到上一次提交,移动分支到某个提交记录处,
git branch -f bugFix c2
也可以直接通过HEAD^
来指向上一个提交记录,或通过HEAD~3
往上移动3级
git branch -f bugFix HEAD^
git branch -f bugFix HEAD~2
回退到上一次提交的版本,
# 回到此分支的上一个提交
git reset HEAD^
# 回到master分支的上一个提交
git reset master^
如果是远程也想要回退到上一个版本,可以使用
git revert HEAD^
如果想撤销远程分支上的内容需要使用git revert,它会新创建一个提交,而新创建的提交的状态正好等于你上一个版本的状态,假如我们现在的版本是 c2
,它上一个版本就是c1
,那么执行完这个命令之后,就会新创建一个提交 为 c1’
,它与c1
的内容一致,我们将这它推送到远程端,别人更新之后就可以了
git revert HEAD^
将其他提交,抓过来,放到此分支下面,
c2
,c2
,c7
是git log
中的commit id
# 切换到master分支
git checkout master
# 将其他分支的提交,拿过来,放到master上,特别注意,这几个记录的顺序问题
git cherry-pick c2 c4 c7
# 结果: HEAD——> c7——> c4——> c2
也就是做个锚点,因为分支是很容易被改变,为了防止以后不能返回,所以可以打个tag,做个回滚记录点
# c1 为提交记录的id
git tag tag名 c1
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。