Eclipse上GIT插件EGIT使用手册--解决推送冲突

多人协做开发的状况下,往服务器推送更新时不免出现冲突,因此推送以前须要解决服务器端的最新版本和本地仓库的冲突。Pull操做就是把服务器端的更新拉拢到本地仓库进行合并,解决好合并冲突后,就能够顺利push到服务器分支了。java

假设如今Mairo兄弟在用GIT协做开发NewSuperMairoBro游戏,目前服务器端的mushroom.java文件的内容以下:服务器

public class Mushroom{
    public int mushroom;
}

MairoBro克隆出代码后,Mairo哥哥作了以下修改spa

public class Mushroom{
    public int mushroomA;
}

Mairo弟弟作了以下修改code

public class Mushroom{
    public int mushroomB;
}

而后Mairo弟弟先push代码,Mairo哥哥使用pull来合并本地仓库和远程仓库,将发行文件出现冲突,此时GIT会自动合并冲突的文件,以下图所示:orm

很明显自动合并的冲突文件不能直接使用,咱们能够手动调整,右键发生冲突的文件,选择Team -> Merge Tool索引

第一项是将GIT自动合并过的文件和服务器端文件进行对比游戏

第二项是用本地最新版本的文件和服务器端文件进行对比,建议用此项开发

接下来就是熟悉的对比界面it


Mairo哥哥将冲突文件修改以下class

而后右键点击此冲突文件,选择Team -> Add to index再次将文件加入索引控制,此时文件已经不是冲突状态,而且能够进行提交并push到服务器端

解决合并冲突后,Mairo弟弟只须要将服务器中合并后的版本pull到本地,就完成了一次协做开发的代码合并。从历史记录中能够看到,从mushroom开始历史进入分支,先是mushroomA的记录,而后是mushroomB的记录,最后历史分支合并。

相关文章
相关标签/搜索