Github_远程仓库多人协作操作,解决冲突

时间:2024-03-12 21:10:46

前提:假设原已有一个代码仓库,加入协作者,大家一起完成一个项目。

一、添加伙伴-->伙伴同意加入-->伙伴clone,提交代码

1、创建者进入仓库主页 ==> Settings页面 ==> 点击Manage access ==> 点击Invite acollaborator ==> 输入协作者的用户名 ==> 点击 add 按钮。

 

2、协作者进入注册github账号的邮箱,点击确定

 

 

 

 

同意后邀请人查看显示:

3、协作者通过克隆仓库到本地进行代码的编写,编写调试完毕后,根据设定的规则提交到远程仓库。

 

 

 

二、解决冲突

冲突产生原因:当远程仓库在多人协作的模式下,会出现多个协作者提交相同代码文件的情况,较后提交的代码文件会提示代码冲突

代码冲突操作步骤:
1、完成远程仓库多人协作操作配置
2、A、B两个账号都克隆项目到本地
3、A账号修改一个文件,如test.py文件,并提交到远程仓库
4、B账号也修改相同的test.py文件,并提交到远程仓库
5、此时出现代码冲突

制造冲突场景:

A操作修改文件:

在第一个文件下增加一行:

在第二个文件下增加一行:

 

 commit 并提交成功:

B操作修改文件:

第二个文件增加一行:

添加到本地:

 push到远程,这个时候报错了,提示第二个文件有冲突:

解决冲突操作步骤:

方式一:
1、使用git pull命令把最新的提交拉取下来
2、如果拉取失败一般原因是没有指定本地子分支与远程origin/子分支的链接:
可使用该命令 git branch --set-upstream-to=origin/远程子分支 本地子分支
3、此时pull虽然成功,但是合并有冲突,需要手动解决,解决的方法和分支管理
中的解决冲突完全一样
4、解决完成之后,使用git push提交

解决冲突操作步骤:

1、先拉取下代码:

2、解决冲突

 

 3、提交

 

方式二:
使用命令git push -f 强制提交,该方式会导致远程仓库之前的修改被覆盖,
同时提交日志也会被覆盖