Github_远程仓库多人协作操作,解决冲突
前提:假设原已有一个代码仓库,加入协作者,大家一起完成一个项目。
一、添加伙伴-->伙伴同意加入-->伙伴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 强制提交,该方式会导致远程仓库之前的修改被覆盖,
同时提交日志也会被覆盖