IntelIJ使用GitHub多人协同开发冲突问题

来源:互联网 发布:明源软件怎么样 编辑:程序博客网 时间:2024/06/07 05:42

通常,多人协作开发需要用GitHub来管理项目版本,至于如何使用Github创建仓库、push、pull项目在此不再赘述,这篇文章讲的是如何多人同时对一个项目进行开发。

第一、多人(用两个人模拟多人)对同一个项目的同一个文件进行修改该如何提交?

(1)GitHub master分支上有一个TestHelloWorld1的项目,开发程序猿1和2首先clone到本地,如下图所示:


(2)开发程序猿1对项目增添了一个System.out.println("HelloWorld2")的语句,同时,开发程序猿2也在其本地对项目增添了一个System.out.println("HelloWorld3")的语句;如下图所示:


(3)开发程序猿2向master分支提交了自己的修改;


(4)开发程序猿1此时也想提交其在本地修改的原始项目


(5)此时,因为开发程序猿2已经提交了其修改,GitHub中版本号+1,版本号要比开发程序猿1的版本号要高,因此提交被拒绝即rejected,并提示可以Merge


(6)点击Merge,进入下图所示页面;


(7)右侧accept yours和accept theirs可以选择保留你自己的修改还是其他人的修改,如果两个都想保留并合并,可以双击左侧文件名,中间是开发程序猿2提交修改之前的原始版本,右侧是开发程序猿2修改后的版本,左侧是你当前的版本即本地版本,可以通过红线标识的箭头选择是否保留,点击箭头即表示把修改加到原始文件中,也就是中间部分。


(8)我选择都保留


(9)点击右下角的Apply,即合并后将中间的最后结果push到master分支



以上就是多人协同开发对同一个文件修改后,push冲突怎么解决


第二、多人(用两个人模拟多人)对同一个项目的新增了不同文件该如何提交?

(1)开发程序猿2在原来项目中增加了一个文件Welcome1并提交,如下图所示:


(2)开发程序猿1在原来项目上,开发了新的功能,增加了一个文件Welcome2


(3)点击提交后,依旧出现冲突,这个时候点击Merge,不用其他选择什么操作,开发程序1的文件自动merge,并提交


0 0