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 强制提交,该方式会导致远程仓库之前的修改被覆盖,
同时提交日志也会被覆盖
Github_远程仓库多人协作操作,解决冲突的更多相关文章
- Git 远程仓库默认权限问题的解决
多人共同开发维护一个项目时,对整个项目文件互有拉取.推送等行为.为防止操作时文件权限出现冲突,可有以下2种方法解决: 1. 本地git的远端设置中,连接远程仓库时多人使用同一个用户名,该用户名为git ...
- IDEA工具java开发之 常用插件 git插件 追加提交 Code Review==代码评审插件 撤销提交 撤销提交 关联远程仓库 设置git 本地操作
◆git 插件 请先安装git for windows ,git客户端工具 平时开发中,git的使用都是用可视化界面,git命令需要不时复习,以备不时之需 1.环境准备 (1)设置git (2)本地操 ...
- git小技巧之分支、关联远程仓库、回滚、解决.gitignore不生效等
1.分支管理 新建并切换分支:git checkout -b <name>新建本地分支并关联到远程分支git checkout -b myRelease origin/Release合并某 ...
- 使用github作为远程仓库的常见git操作
[git上传本地代码到github新建仓库]一.建立git本地仓库 1.在本地目标文件夹(Code)中执行命令: git init //初始化本地仓库二.将上传到github的项目文件添加到本地仓库中 ...
- git远程仓库、提交代码操作
初始化仓库 1.初始化 git init #或 git clone 远程仓库地址 git init 后续要添加远程仓库,git clone不需要再添加 2.连接仓库 git remote add 远程 ...
- Git与远程仓库关联以及关联错误解决方法
假设你github的用户名是 helloworld ,你在上面创建了一个 名为 hello 的 repository. 一. 与本地仓库进行关联 1.1用原生ssh进行关联,速度快: git re ...
- git 常用命令 command 1.0(本地 local repository 对远程仓库 remote repository 的操作)
输入 q 退出 日志界面
- Git学习之路(5)- 同步到远程仓库及多人协作问题
▓▓▓▓▓▓ 大致介绍 我们写好文件后添加到版本库,但是这样还没有做完,我们还需要将它同步到GitHub的远程仓库上,这里就以我们刚开始的drag项目为例,我们在Git学习之路(2)-安装GIt和创建 ...
- git连接远程仓库时,出现“ Repository not found"的解决办法
2018-08-25 今天连接远程仓库时,出现: 原来是远程仓库地址名字错了. 解决方法: 1.找到.git目录 2.进入.git找到config文件 3.修改config里面的远程地址url
随机推荐
- Android Linker 与 SO 加壳技术
1. 前言 Android 系统安全愈发重要,像传统pc安全的可执行文件加固一样,应用加固是Android系统安全中非常重要的一环.目前Android 应用加固可以分为dex加固和Native加固,N ...
- hdu5256序列变换(非递减子序列)
题意(中文直接粘吧)序列变换 Problem Description 我们有一个数列A1,A2...An,你现在要求修改数量最少的元素,使得这个数列严格递增.其中无论是修改前还是修改后,每个元 ...
- CVE-2013-0077:Microsoft DirectShow quartz.dll m2p 文件堆溢出漏洞简单分析
0x01 前言 2012 年 10 月 5 日,exploit-db 漏洞公布站点上发布了 QQplayer.exe 3.7.892 m2p quartz.dll Heap Pointer OverW ...
- node-mongo封装
node 里面调用mongo封装了下. mongo.js文件 const { MongoClient, ObjectId } = require('mongodb'); const mongourl ...
- 深入探索Android热修复技术原理读书笔记 —— 代码热修复技术
在前一篇文章 深入探索Android热修复技术原理读书笔记 -- 热修复技术介绍中,对热修复技术进行了介绍,下面将详细介绍其中的代码修复技术. 1 底层热替换原理 在各种 Android 热修复方案中 ...
- 浅谈持续集成(CI)、持续交付(CD)、持续部署(CD)
CI/CD是实现敏捷和Devops理念的一种方法,具体而言,CI/CD 可让持续自动化和持续监控贯穿于应用的 整个生命周期(从集成和测试阶段,到交付和部署).这些关联的事务通常被统称为"CI ...
- 如何在centos上配置802.1Q VLAN标记,linux单网卡多vlan多网段Ip配置案例
介绍 VLAN使将大型网络分成较小且易于管理的网络成为可能.802.1Q是所有供应商都在其网络设备中实施的标准.某些交换机能够将多个VLAN分配给单个网络端口.使用此功能,您可以将多个VLAN分配给单 ...
- HashMap方法源码分析
本文将分析put(),resize(),get()和remove()方法的源码 putval()方法 大致步骤:计算key的hash值:根据hash值计算数组下标:判断下标处是否有节点,无节点则直接插 ...
- 在Visual Studio 中使用git——文件管理-中(五)
在Visual Studio 中使用git--什么是Git(一) 在Visual Studio 中使用git--给Visual Studio安装 git插件(二) 在Visual Studio 中使用 ...
- 在Visual Studio 中使用git——文件管理-下(六)
在Visual Studio 中使用git--什么是Git(一) 在Visual Studio 中使用git--给Visual Studio安装 git插件(二) 在Visual Studio 中使用 ...