git冲突的解决与版本回退遇到的问题
这里有2个分支,master中的test.txt文件内容是master init,branch01中的test.txt文件内容是branch01 init。
1、合并分支遇到冲突
在master上merge branch01,由于master的第一行是master init,branch01的第一行是branch01 init,所以合并时就出现冲突了。
解决方法:修改冲突的test.txt文件,然后git add, git commit, git push
查看提交后的结果,会看到把branch01所有提交的版本都合并到了master上了,解决冲突后的test.txt文件也是对的。
2、版本回退遇到的问题
输入git log,如下图所示,head表示最新版本。
现在把分支回退到合并前,也就是回退到master init提交的版本,如下图所示,输入git reset --hard [commit-id],可以看到当前版本已经回退到了master init提交到那个版本,之前合并到版本已经没有了
现在把当前本地分支同步到远程,如下图所示,使用git push出现推送失败的情况,因为本地分支的版本低于远程分支,当然会这样,我们本来就行回退到之前的分支。注意这里不要使用git pull来更新分支,更新后又是回退前的版本了。使用git push -f强制推送过去,就可以了。强制推送的情况在这里可以使用,一般情况下不推荐使用。
我们再次查看远程分支,如下图所示,推送版本只有master init,之前合并后的版本没有了
相关推荐
formula 2020-11-12
huhongfei 2020-11-05
乾坤一碼農 2020-10-27
liumengyanysu 2020-10-22
E哥的aws认证攻略 2020-10-15
tianyafengxin 2020-10-08
guying 2020-10-05
好脑筋不如烂笔头 2020-09-17
nebulali 2020-09-11
佛系程序员J 2020-09-15
fenggit 2020-09-15
JustHaveTry 2020-09-11
兄dei努力赚钱吧 2020-09-06
IngeniousIT 2020-08-25
liumengyanysu 2020-08-17
guying 2020-08-16