哎,一有矛盾,同事就得说自己是对的。我应该怎么办?命令。首先我们在本地接触最直接的就是远程自己的仓库。至于别人的远程仓库(大家一起修改文件的仓库,以下简称远程仓库),主要是通过远程自己的仓库进行mr。那么我们如何保证我们的仓库中有其他人的修改呢?pull可以看到远程仓库里有一个others.txt文件,但是本地没有。为了同步本地和远程仓库,我们需要使用pull和push。相应的,后面一般会跟远程仓库的地址(上一篇文章简单介绍了如何设置不同远程仓库的地址)。当mrconfects时,可以发现本地已经有新的文件了。注意,我们修改的文件也在远程仓库中,所以如果别人觉得我们的文件写的不够好,修改一下。就像上次提交的helloworld,我觉得太简单了。我只打印了一次,然后加了一个for循环打印了100次,每次打印后都加了序号。同时我们也觉得代码不够好,需要重复1000遍,想在输出后加一句经典台词,所以改了本地代码。然后就兴高采烈的推了代码,还提到了MergeRequest,在有些平台上也叫PullRequest。这时候你会发现有这个PullRequest无法自动合并的告警。您应该手动合并它。其实是你和别人同时修改的。超出文件中的同一行,发生冲突。之后,您必须解决冲突。不同的平台有不同的冲突解决接口,但本质都是git。这时候就需要程序员之间讨论(撕)(b),谁是评判标准,这里假设是这样的,保持下面的i+1但是需要循环1000次。所以需要修改这个文件的代码。原则上你删了也没关系,因为git已经告诉你这个文件有冲突了。至于如何选择,需要保留什么,git认为我们会处理好。这一切做完之后,就会和之前的mr保持一致,审核通过后就可以合并了。不过mr的时候解决冲突总感觉有点麻烦,所以一般工作中的普遍做法是commit后先拉取最新代码拉取时的冲突,可以看到远程仓库是此时像这样,然后远程修改文件,模拟其他同事已经合并到新的代码中。同样在不知不觉中,我们想添加一个getStr方法。并且在main函数中编辑后正常调用add和commit,但是不要push,先pull远程仓库的代码,最后可以看到这样的信息,就是让我们解决冲突Auto-merginghello.javaCONFLICT(content):Mergeconflictinhello.javaAutomaticmergefailed;修复冲突然后提交结果。如何解决,只需编辑冲突文件即可。用vim看看此时冲突的文件是什么样子的。把我们不想删除的<<<<<<<,=======和>>>>>>>>和HEAD字符,然后保留需要的代码,最后只需要添加commitpushmr通常情况下。这时候一些刚学习的朋友肯定会问,如果别人在修改的时候把代码合并到仓库里怎么办?开个玩笑,不过这种情况99.99%只会存在于理论上,现实中基本不会出现在工作中。如果碰巧发生了,那就解决冲突。在stash中,我们修改了多个文件,比如ABCDEF...Z这26个文件。主任过来说有一个模块很紧急,需要合并到ABCD的4个文件中。远程仓库已经合并了LX的两个文件。然后记得养成一个好习惯。提交后,拉取远程代码库。总结就是不想提交所有修改过的文件,如果修改后的文件有冲突,说明合并的时候可能会覆盖部分本地文件。有两种选择:提交,然后解决冲突存储,然后将其拉下。如果stash弹出的时候有冲突,解决冲突的stash是先把本地的修改放到一个git“stack”里,local到remote是Unmodified状态,然后就可以正常pull了。使用gitstashsave[savemessage]临时存储更改。改完之后,就可以成功拉下来了。接下来看看git的状态。既然可以保存,那肯定可以取出来,上面说了,但是如果你保存的文件和远程仓库修改的文件是一样的,那么pop出来的时候肯定会有冲突。解决方法也是处理冲突,这里就不细说了。提醒一下,add和commit都是可以回滚的,所以push之后一定要有相应的操作。可以看出,这次推送至少进行了两个文件。如果要撤回推送,首先要知道推送的是什么,通过gitlog查看哪些推送,但是gitlog有很多操作(也就是美化),最常用的是以下几种不加anything,输出全部和前几条冗长的输出,gitlog-p单行输出,gitlog--oneline当然可以结合使用,gitlog--oneline-2自然是单行输出前2条记录。不难看出,每次提交的主题都是一串数字(版本号)和提交时的信息。当我们想回滚到其他版本时,只需gitreset[versionnumber]即可。我知道网上有很多关于reset的风骚操作,比如回滚前多少次,但是回滚可不是查版本号那么简单,该用的时候查一下就行了。补充说我想回到以前的版本。我只需要这样做就可以看到原来推送的两个文件现在变成了pendingsubmission。创作不易,如果对你有帮助,欢迎点赞收藏分享!以下是个人的公众号,有兴趣的可以关注一下,说不定就是你的宝藏公众号!!!
