电话:15657285868
关闭
您当前的位置:首页 > 职场资讯 > 求职资讯

Git多人协作冲突解决:备份防丢与pull处理技巧

来源:网络整理 时间:2026-09-21 07:07:49 作者:佚名 浏览量:

冲突的解决

如果你在使用git的时候还不是很熟练, 那么在遇到push操作无法完成的情况时, 最好在尝试pull之前采取行动, 你可以选择在本地创建一个全新的分支, 并且将这个新分支的更改情况commit到本地的仓库中, 这样做能够保证你的本地仓库中存在这样的commit记录, 即便后面出现了什么意外状况, 你也还有可能找回那些代码, 进而避免了代码丢失的风险。

更严重的是, 应该把整个文件夹都进行备份, 以免将来因为寻找不到代码而感到非常开心(注: 此处原文为反讽语气, 实际应为避免丢失), 这种局面是我们所不愿意看到的。

当多个开发人员共同进行开发工作的时候, 在Git工具下面会发生冲突现象产生, 以及关于该现象需要解决。

演示

这个项目里面存在着一个名为test.txt的文件, 这个文件所包含的具体内容如下所示, 这部分信息是从github平台上面的仓库当中截取获取来的。

1、为了保证项目正确, 需要先将其拉到最新版本。

2、修改local的test.txt的文件内容,修改后的内容是:

接着, 在本地对状态进行检查, 并将相应的更改提交到本地的代码仓库里面去。

3、 在完成对test.txt的修改操作, 并且执行完成相关的推送工作之后, 再进行后续的步骤。

(以下是我直接在github的这个仓库里面进行编辑, 并且直接提交的那份内容)

去查看远端的提交记录, 可以看到有一次新的提交出现了。

这就导致了冲突, 原因在于本地电脑里的那个叫test.txt的文件的具体状态和远在服务器的同文件版本没有保持一致。

4、将本地已经提交的更改内容进行推送操作的时候, 发现了推送无法完成的情况。

发现需要先执行git pull操作, 于是先将代码进行更新处理。

git多人开发冲突处理_冲突解决_git冲突解决

在进行了拉取操作以后, 给出了非常明确的错误提示信息。这个信息是“自动合并失败;请修复冲突内容, 然后提交最终结果。”。

在此刻, 针对test.txt这个文件的内部所含有的内容进行查阅的操作。

在这当中, > commit-id 这个部分, 它指代的其实就是远程仓库里面所包含的内容。

这句话的意思, 其实和svn这种操作方式是比较类似的。

为了解决可能出现的冲突问题, 我们需要执行删除相关注释的操作, 并且要保证最终推送到版本库的 test.txt 文件的内容是确定的最后版本内容。

对test.txt这个文件里面, 在处理那些冲突的情况之后, 它所拥有的内容进行一个修改的操作:

非常特殊的一个现象是, 即便你已经在这个开发工具里解决了冲突问题, 那些代表冲突的图标却依然还停留在文件上面, 不过这些图标确实不会影响你去执行提交和推送的操作。具体的情况就像下面所显示的那样:

5、冲突解决后,在git status可以看到当前的文件状态:

这里有一件事情是必须要格外留意的, 就是当前的整个分支现在会处在一个叫做MERGING的那种状态之下, 还有呢, 就是那个刚才在处理冲突的时候所涉及到的文件test.txt是存在于Unmerged paths这个状态之下的。

请你根据事先给定的那些提示, 先使用git add test.txt这条命令去做相应的操作, 接着再做git commit这件事, 最后再去执行git push这个动作。

此时去看remote中的test.txt内容和commit log:

微信扫一扫分享资讯
客服服务热线
15657285868
8:00- -18:00
微信公众号
手机浏览

Copyright C 2023 All Rights Reserved 版权所有 聚才人才网 浙ICP备19034137号-11

地址:浙江省湖州市长兴县 EMAIL:859552203@qq.com

Powered by PHPYun.

用微信扫一扫