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

一、添加伙伴-->伙伴同意加入-->伙伴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 强制提交,该方式会导致远程仓库之前的修改被覆盖,
同时提交日志也会被覆盖

Github_远程仓库多人协作操作,解决冲突的更多相关文章

  1. Git 远程仓库默认权限问题的解决

    多人共同开发维护一个项目时,对整个项目文件互有拉取.推送等行为.为防止操作时文件权限出现冲突,可有以下2种方法解决: 1. 本地git的远端设置中,连接远程仓库时多人使用同一个用户名,该用户名为git ...

  2. IDEA工具java开发之 常用插件 git插件 追加提交 Code Review==代码评审插件 撤销提交 撤销提交 关联远程仓库 设置git 本地操作

    ◆git 插件 请先安装git for windows ,git客户端工具 平时开发中,git的使用都是用可视化界面,git命令需要不时复习,以备不时之需 1.环境准备 (1)设置git (2)本地操 ...

  3. git小技巧之分支、关联远程仓库、回滚、解决.gitignore不生效等

    1.分支管理 新建并切换分支:git checkout -b <name>新建本地分支并关联到远程分支git checkout -b myRelease origin/Release合并某 ...

  4. 使用github作为远程仓库的常见git操作

    [git上传本地代码到github新建仓库]一.建立git本地仓库 1.在本地目标文件夹(Code)中执行命令: git init //初始化本地仓库二.将上传到github的项目文件添加到本地仓库中 ...

  5. git远程仓库、提交代码操作

    初始化仓库 1.初始化 git init #或 git clone 远程仓库地址 git init 后续要添加远程仓库,git clone不需要再添加 2.连接仓库 git remote add 远程 ...

  6. Git与远程仓库关联以及关联错误解决方法

    假设你github的用户名是  helloworld  ,你在上面创建了一个 名为 hello 的 repository. 一. 与本地仓库进行关联 1.1用原生ssh进行关联,速度快: git re ...

  7. git 常用命令 command 1.0(本地 local repository 对远程仓库 remote repository 的操作)

     输入 q 退出 日志界面

  8. Git学习之路(5)- 同步到远程仓库及多人协作问题

    ▓▓▓▓▓▓ 大致介绍 我们写好文件后添加到版本库,但是这样还没有做完,我们还需要将它同步到GitHub的远程仓库上,这里就以我们刚开始的drag项目为例,我们在Git学习之路(2)-安装GIt和创建 ...

  9. git连接远程仓库时,出现“ Repository not found"的解决办法

    2018-08-25 今天连接远程仓库时,出现: 原来是远程仓库地址名字错了. 解决方法: 1.找到.git目录 2.进入.git找到config文件 3.修改config里面的远程地址url

随机推荐

  1. Windows核心编程笔记之内核对象

    0x01 子进程继承父进程内核对象句柄 父进程 #include <Windows.h> #include <iostream> #include <strsafe.h& ...

  2. 预防NSA勒索病毒攻击脚本

    预防445端口勒索病毒修复脚本 直接复制下去,创建一个文件,名字随意后缀是.bat,然后双击就可以了(如果提示拒绝访问,就直接右键管理员,尤其是Win8 Win10). :+添加关键注册表以及停掉并且 ...

  3. pandas(10):数据增删改

    目录 一.对索引进行操作 1 操作索引值df.rename() 二.指定数据替换.修改df.replace() 三.特殊值--缺失值处理 四.新增行列 1 直接赋值添加新列 2 df.assign() ...

  4. 全套visio版本安装教程及下载地址

    1:visio 2003 安装教程及下载地址 https://mp.weixin.qq.com/s/vhJUagKBz3vM-Dru0cwYow 2:visio 2007 安装教程及下载地址 http ...

  5. 大数据开发-Flink-数据流DataStream和DataSet

    Flink主要用来处理数据流,所以从抽象上来看就是对数据流的处理,正如前面大数据开发-Flink-体系结构 && 运行架构提到写Flink程序实际上就是在写DataSource.Tra ...

  6. mysql无列名注入

    0x00 原理   mysql无列名注入是报错注入的一个变种,前提是已知表名,但是不知道列名,或者只知道部分列名,可通过报错注入拼接查询自身表,当自表被拼接时,由于存在重复属性列,会将列信息报错返回, ...

  7. 1.5 RPM红帽软件包1.6 Yum软件仓库

    1.5 RPM红帽软件包 在RPM(红帽软件包管理器)公布之前,要想在Linux系统中安装软件只能采取源码包的方式安装.早期在Linux系统中安装程序是一件非常困难.耗费耐心的事情,而且大多数的服务程 ...

  8. Linux_配置辅助DNS服务(基础)

    [RHEL8]-DNSserver1:[RHEL7]-DNSserver2:[Centos7]-DNSclient !!!测试环境我们首关闭防火墙和selinux(DNSserver1.DNSserv ...

  9. mysql基础之忘掉密码解决办法及恢复root最高权限办法

    如果忘记了mysql的root用户的密码,可以使用如下的方法,重置root密码. 方法一: 1.停止当前mysql进程 systemctl stop mariadb 2.mysql进程停止后,使用如下 ...

  10. KEIL中查看程序存储空间的大小

    Program Size: Code=86496 RO-data=9064 RW-data=1452 ZI-data=16116 Code是代码占用的空间,RO-data是 Read Only 只读常 ...