七、Git远程仓库操作——团队成员内协作

news2024/12/25 9:11:29

1. github远程协作的两种方式

前面我写的笔记,都是自己一个人在玩,无论是本地操作还是推送到远程都是自己推送到自己的仓库。

如果是别人拥有这个仓库,而我想对这个仓库的内容更改后,然后想推送更新到这个仓库,我们要有什么方法?

1.1 邀请你作为协作者

仓库拥有者邀请你作为该项目的协作者,那么这时你就有权限向该仓库推送更新。

1.2 pull request机制

仓库拥有者并不想邀请你作为协作者的身份,这时github还有另一种机制 pull request,可以让你更新到那个仓库。大致的流程就是:

  1. 首先你需要fork那个仓库到你自己的github中,其实就是复制了一份副本到你自己的仓库
  2. 然后克隆你自己fork的这个仓库到本地
  3. 在本地修改之后,我们在 git commit提交到本地
  4. 然后再git push推送到自己fork的远程仓库
  5. 推送到了自己的仓库之后,我们再提交pull request,其实就是申请原仓库的拥有者把自己推送的更新,请求合并到他自己的仓库。

下面我先介绍下,仓库拥有者邀请你作为协作者,这种方式实现团队协作。

2. 协作者先克隆别人的仓库到本地

在开搞之前,还需要注册一个github小号,或者找别人要一个账号来进行测试。

  • 首先,我们克隆别人的仓库到自己本地电脑
  • 然后对该仓库进行常见的本地操作,比如 git status / git add / git commit 等等。我们修改了之后提交更新到本地仓库
  • 本地提交了更新之后,我们想把更新推送到远程仓库。这时是拒绝你推送的,因为那个仓库不属于你,你无权限推送。

3. 仓库拥有者邀请协作者加入

我们需要打开在github网站上自己的一个仓库

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yY0j2O2M-1676130407948)(../picture/image-20230211224527645.png)]

然后,在Collaborators选项中,填写邀请的账号。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1wTTIxl2-1676130407949)(../picture/image-20230211224659631.png)]

当我们填写邀请的账号点击完成时,github就会发送一封邮件给受邀请的协作者。然后我们就等待受邀请的协作者同意。

然后受邀请者打开邮件,点击同意邀请即可。

这个时候,如果你再次向这个仓库推送自己在本地的commit,那么就可以推送成功了的,因为你已经有权限向该仓库提交更新了。

4. 仓库拥有者拉取协作者的更新

上面,仓库的拥有者邀请了一位协作者加入到该仓库了。而且他还向该仓库推送了更新的内容。那么仓库的拥有者可以使用:

git pull origin master

使用该命令,可以拉取远程仓库的更新到自己的本地仓库。

这样就实现了远程协作啦。但是真是的情况并不会那么顺利的,因为还会产生团队协作的冲突

5. 团队协作的冲突介绍

git团队成员协作时,一般会产生两种冲突

  1. 团队其中的一个成员向远程库推送了更新之后,其他所有的成员都不能再推送了,其他成员想要推送那么必须先拉取最新的远程库,然后才能推送。

  2. 当我们拉取了远程库最新的内容时,如果别人提交的远程库的修改和你自己在本地仓库的修改,是在同一个文件同一个地方时,那么就会导致自动合并失败,然后会进入到手动合并(手动合并的操作前面已经有写一篇文章介绍)。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/340445.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【随笔】我迟到的2022年度总结:突破零粉丝,1个月涨粉1000+,2023年目标3万+

前言 我是21年12月注册的csdn, 作为用户平时看看文章,从未参与过写文章这件事。 但这一年的时间我见证了很多新号的崛起,有的号我平时关注比较多,看着他们从零粉丝突破了三万甚至五万的粉丝量。 在csdn上遇到了我的贵人&#x…

位运算 | 1356. 根据数字二进制下 1 的数目排序

LeetCode 1356. 根据数字二进制下 1 的数目排序 给你一个整数数组 arr 。请你将数组中的元素按照其二进制表示中数字 1 的数目升序排序。如果存在多个数字二进制中 1 的数目相同,则必须将它们按照数值大小升序排列。 文章讲解https://www.programmercarl.com/1356.%…

【微电网】基于风光储能和需求响应的微电网日前经济调度(Python代码实现)

目录 1 概述 2 知识点及数学模型 3 算例实现 3.1算例介绍 3.2风光参与的模型求解 3.3 风光和储能参与的模型求解 3.5 风光储能和需求响应都参与模型求解 3.6 结果分析对比 4 Python代码及算例数据 1 概述 近年来,微电网、清洁能源等已成为全球关注的热点…

Linux Vim编辑器基础讲解

目录 vim三个模式 命令模式 输入模式(insert 插入模式、编辑模式) 末行模式 编辑简单文档 什么是vim Vim是文本编辑器,是Linux上最常用的文本编辑器 Vim可以建立、编辑、显示文件 绝大多数Linux都会携带vim或者vi vim编辑器和vi编辑器的…

windbg-应用层实时调试

调试符号windbg使用一个或多个目录来存放符号条件,并使用环境变量_NT_SYMBOL_PATH来指向这些环境变量的位置,对操作系统内部模块的符号文件,一般用http://msdl.microsoft.com/download/symbols配置如下:SRV*C:\Symbols*http://msd…

手把手教你部署ruoyi前后端分离版本

下载源码(当前版本3.8.5)RuoYi-Vue: 🎉 基于SpringBoot,Spring Security,JWT,Vue & Element 的前后端分离权限管理系统,同时提供了 Vue3 的版本 (gitee.com)创建数据库(一定要是这三个&…

【STM32】【HAL库】遥控关灯3 遥控器

相关连接 【STM32】【HAL库】遥控关灯0 概述 【STM32】【HAL库】遥控关灯1主机 【STM32】【HAL库】遥控关灯2 分机 【STM32】【HAL库】遥控关灯3 遥控器 需求 硬件遥控器 控制一个灯的开关(2个按键),发射RF433或红外 使用纽扣电池供电 一键启动,低待机功耗 硬件设计 一键…

推荐系统开源工具RecBole学习

文章全文首发:码农的科研笔记(公众号) RecBole是由AI Box团队开发的基于Pytorch的推荐系统算法库。该框架从数据处理、模型开发和算法训练都有涉及,能方便进行算法构建和实验对比。 数据组织形式 RecBole约定了一个统一、易用的数…

发生异常: AttributeError ‘xxx’ object has no attribute ‘ooo’

python 发生异常: AttributeError ‘xxx’ object has no attribute ‘ooo’ 原因: 函数调用发生在变量定义之前 示例分析: 在apple.py文件中代码如下: class Apple():def __init__(self):self.eat()self.pricedef eat(self):print("吃…

Spring Security in Action 第十八章 手把手OAuth2应用

本专栏将从基础开始,循序渐进,以实战为线索,逐步深入SpringSecurity相关知识相关知识,打造完整的SpringSecurity学习步骤,提升工程化编码能力和思维能力,写出高质量代码。希望大家都能够从中有所收获&#…

Java:SpringMVC的使用(2)

目录第十二章 REST风格CRUD练习12.1 搭建环境12.2 实现功能思路第十三章 SpringMVC消息转换器13.1 消息转换器概述13.2 使用消息转换器处理请求报文(1) 使用RequestBody获取请求体(2) 使用HttpEntity\<T>获取请求体及请求头13.3 使用消息转换器处理响应报文(1) 使用Respo…

llvm 创建外部调用函数方法

llvm 创建外部调用函数方法 2023-02-12 15:26:19 sizaif 文章目录llvm 创建外部调用函数方法法一:声名参数类型及函数类型在llvm IR中处理并调用函数:外部函数&#xff1a;法二声明函数在llvm IR中处理并函数调用外部函数法一: 声名参数类型及函数类型 // Fun Ty static Fun…

【CS224W】(task3)NetworkX工具包实践

note 节点可以为任意可哈希的对象&#xff0c;比如字符串、图像、XML对象&#xff0c;甚至另一个Graph、自定义的节点对象。通过这种方式可以自由灵活地构建&#xff1a;图为节点、文件为节点、函数为节点&#xff0c;等灵活的图形式。暂时省略&#xff1a;【B5】计算机网络图…

vue3学习资料整理

一、一个后端程序员为什么要学习前端&#xff1f; 1.网上找到的学习理由 《Java后端的我也要学Node.js 了》 https://blog.csdn.net/yusimiao/article/details/104689007 《nodejs后端开发的优缺点&#xff08;nodejs的概念与特征详解&#xff09;》 https://www.1pindao.co…

2023级浙江大学MEM提面最新经验分享

一、个人背景背景&#xff1a;本人毕业于某211大学工程管理相关专业&#xff0c;目前定居在杭州&#xff0c;在某汽车制造公司工作&#xff0c;负责研发无人驾驶项目。我申请的是浙大MEM提前批面试&#xff0c;因为通过提面优秀资格顺利上岸录取&#xff0c;之前感到对自己有帮…

Java、JSP动漫网站的设计与实现

技术&#xff1a;Java、JSP等摘要&#xff1a;随着科技的迅速发展&#xff0c;计算机技术已应用到社会的各个领域。随着计算机技术和通信技术的迅速发展&#xff0c;网络的规模也逐渐增大&#xff0c;网络的元素也随之不断增加&#xff0c;有的利用其通信&#xff0c;有的利用其…

【软件测试开发】Junit5单元测试框架

目录1. 注解Test 注解BeforeEach BeforeAllAfterEach AfterAll2. 断言 assertassertequalsassertTrue assertFalseassertNull assertNotNull3. 用例执行顺序方法排序&#xff0c;通过 Order 注解来排序4. 测试套件 Suite5. 参数化单参数stringsints6. 参数化多参数CsvSourceCsv…

File类

&#x1f3e1;个人主页 &#xff1a; 守夜人st &#x1f680;系列专栏&#xff1a;Java …持续更新中敬请关注… &#x1f649;博主简介&#xff1a;软件工程专业&#xff0c;在校学生&#xff0c;写博客是为了总结回顾一些所学知识点 ✈️推荐一款模拟面试&#xff0c;刷题神器…

2. SpringMVC 请求与响应

文章目录1. 请求映射路径2. 请求参数2.1 get 请求发送普通参数2.2 post 请求发送普通参数2.3 五种类型的参数传递2.4.1 普通参数2.4.2 POJO 数据类型2.4.3 嵌套 POJO 类型参数2.4.4 数组类型参数2.4.5 集合类型参数3. json 数据传输参数&#xff08;重点&#xff09;3.1 传输 j…

C语言(C预编译指令)

目录 1.undef 2.条件编译#ifdef,#else和#endif 3.#ifndef 4.#if和#elif 5.预定义宏 6.#line和#error 7.#pragma 1.undef #undef指令用于取消已定义的#define指令 #define LIMIT 400 #undef LIMIT 如果想使用一个名称但又不确定之前是否已经用过&#xff0c;为了安全起…