转载地址:http://www.cnblogs.com/ultrazb/p/3843456.html
Eclipse有一个git的插件叫EGit,用于实现本地代码和远程代码对比、合并以及提交。但是在本地代码和远程代码有冲突的时候,EGit的处理方案还是有点复杂。今天就彻底把这些步骤给理清楚,并公开让一些类似我这样的初学者有个指引,如有不当,请多指正。
这里我通过OSC的git做了一个测试的项目,我先把项目导下来,然后把OSC上的项目做一些修改,同时修改已经导下来的项目。
Step 1
通过在Eclipse中右键项目,在team选项中选择Synchronize Workspace, 然后出现项目同步视图,如下图,
大家应该注意到,有两个文件是有冲突的。莫急,走起。
Step 2
既然有冲突,那么就开始合并冲突。合并冲突前,先要把代码提交到git的本地仓库。现在在同步视图这里右键项目然后选择Commit,如下图【全部commit】,
然后会跳到代码提交视图,如下图,
点击Commit按钮,注意是Commmit按钮,而不是Commit and Push。
Setp 3
把代码Commit到本地仓库之后,我们就可以把远程的代码pull下来并且合并,如下图,
把远程代码pull下来之后,同步视图如下,
这里有点怪,EGit把远程代码pull下来的同时会把代码同时merge了,这个动作很合理,但是让我很不爽。但是不管它,继续。点击一下有冲突的文件,会在右边的对比视图看到如下面视图,
这时我们要做的就是把已经合并了的文件修正过来。
Setp 4
把合并的代码都修正过来之后,在在项目对比视图右键项目然后选择Add to Index,这个步骤非常重要【只有冲突的类才能有此操作,不用担心,接着做】,如下图,
然后项目对比视图会变成这个样子【同时可能会有绿色+号出现,不用管】,
注意,这个时候,冲突的文件前冲突的符号下就多了个星星。
Setp 5
到现在合并就已经完成,可以把代码提交到远程仓库了。右键项目选择Commit然后在下面视图中点击Commit and Push,
到现在这个步骤,Conguratulation,已经搞定了。