Git学习笔记(第5章):Git团队协作机制

news2024/11/15 8:26:15

目录

5.1 团队内协作

5.2 跨团队协作


        Git进行版本控制都是在本地库操作的。若想使用Git进行团队协作,就必须借助代码托管中心。

5.1 团队内协作

  • 问题引入:成员1(大佬)利用Git在宿主机上初始化本地库,完成代码的整体框架,并添加到暂存区和提交本地库。此时,若成员1想借助团队内其他成员的力量进一步完善代码,应该如何操作呢?
  • Step1:成员1(大佬)使用push”命令将(自己的)本地库推送到(自己的)远程库(代码托管中心);(无需权限
  • Step2:成员2(新手)使用clone”命令将(成员1的)远程库克隆到(自己的)本地库;(无需权限
  • Step3:成员2(新手)使用push”命令将(自己修改后的)本地库推送到(成员1的)远程库;(需要权限
    • :成员2需要获取成员1远程库的权限,即成员1需要将成员2加入到自己的团队中(并不是所有人都能往该远程库进行push操作)。
  • Step4:成员1(大佬)使用pull”命令将(成员2修改后的)远程库拉取到(自己的)本地库(进而更新本地库)。
    • :此时,成员1的本地库、成员2的本地库和远程库的代码 三者完全一致。

5.2 跨团队协作

  • 问题引入:若仅仅凭借团队内成员的力量,仍然无法将代码进行完善。此时,还需要借助团队外其他成员的力量。
    • 实现1:将外援加入到团队中,使用上述的“团队内协作”机制(不太现实)
    • 实现2:使用“跨团队协作”机制
  • Step1:外援使用点击fork”按钮将(成员1的)远程库叉到(自己的)远程库;
    • 注:此操作等价于复制操作
  • Step2:外援使用clone”命令将(自己的)远程库克隆到(自己的)本地库;
  • Step3:外援使用push”命令将(自己修改后的)本地库推送到(自己的)远程库;
  • Step4:外援点击Create pull request”按钮,请求仓库的维护者或其他团队成员来查看、讨论和最终合并更改。
    • 1:pull request不是一个Git命令,而是GitHub(或其他一些托管服务)的概念。
    • 2:打开 GitHub 网站,进入仓库页面,切换到新分支,点击 "Compare & pull request" 按钮。填写相关信息,然后点击 "Create pull request"。
  • Step5:团队成员可以在Pull Request页面进行讨论,进行代码审查,提出修改建议等。
  • Step6:团队成员点击Merge pull request”按钮,将(外援的)远程库合并到(自己的)远程库;
    • 当代码经过审查并通过测试,可以点击 "Merge pull request" 按钮将新功能分支的更改合并到主分支。
  • Step7:团队成员使用pull”命令将(自己的)远程库拉取到(自己的)本地库。

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

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

相关文章

016-Vue-黑马2023:前后端分离开发(在线接口文档),前端工程化、Element、vue编写一个完成页面、Vue路由、vue打包部署到nginx

第三节 前后端分离开发 1、介绍 开发模式 前后端混合开发:传统开发模式 前后端分离开发:当前最为主流的开发模式 页面原型需求案例:分析出接口文档 离线开发文档示例: 2、YAPI(官网已停用) 202…

服务注册流程解析

本文主要介绍服务注册的基本流程 起手式 接上面的继续说,服务注册是一门至高无上的武学,招式千变万化 ,九曲十八弯打得你找不到北。可正所谓这顺藤摸瓜,瓜不好找,可是这藤长得地方特别显眼。那么今天,就让…

【极问系列】springBoot集成elasticsearch出现Unable to parse response body for Response

【极问系列】 springBoot集成elasticsearch出现Unable to parse response body for Response 如何解决? 一.问题 #springboot集成elasticsearch组件,进行增删改操作的时候报异常Unable to parse response body for Response{requestLineDELETE /aurora-20240120/…

HarmonyOS4.0系列——07、自定义组件的生命周期、路由以及路由传参

自定义组件的生命周期 允许在生命周期函数中使用 Promise 和异步回调函数,比如网络资源获取,定时器设置等; 页面生命周期 即被Entry 装饰的组件生命周期,提供以下生命周期接口: onPageShow 页面加载时触发&#xff…

UE5 C++ 学习笔记 UBT UHT 和 一些头文件

总结一些似懂非懂的知识点,从头慢慢梳理。 任何一个项目都有创建这些三个.cs。 这个是蓝图转C 这个是本身就是C项目,应该就是多了一个GameModeBase类 Build.cs包含了每个模块的信息,表明了这个项目用到了哪一些模块。该文件里的using UnrealBuilTool 是…

路由器结构

路由器是连接互联网的设备,本文主要描述路由器的结构组成。 如上所示,OSI(Open System Interconnect)开放系统互联参考模型是互联网架构的标准协议栈,由ISO标准组织制定。自底向上,互联网架构分为7层&#…

Gitee作为远程仓库保存Vue项目

1.先在gitee上创建仓库 2.本地创建vue项目 3. 将本地项目与远程仓库进行关联 依次执行以下命令 # 进入到项目所在目录 cd vue-rabbit # 将项目变成git项目, 运行命令会在该目录下生成 .git文件 git init# 本地仓库与远程仓库进行关联 git remote add origin 你项目的远程地址…

vue+springboot(前后端分离项目)

目录 JAVA后端项目 一、创建项目 1、使用aliyun的server url 2、初始化项目结构 3、添加依赖 4、创建文件夹 5、把mapper类交给spring容器管理 5.1、方法1 5.2、方法2 6、在yaml文件中配置数据库信息 7、在yaml文件中配置mapper的xml文件的路径 8、配置mapper的xml文…

Django开发_13_静态资源、cookie/session/token

一、在html文件下的操作 (一)在html中添加{% load static %}标签,加载static模块 (二)使用{%static "图片地址" %}动态生成静态资源URL 二、csrf跨站请求伪造 在账号登录的html文件中相应位置要加上{% csr…

转转交易猫自带客服多模板全开源完整定制版源码

商品发布; 请在后台商品添加成功后, 再点击该商品管理,可重新编辑当前商品的所有信息及配图以及支付等等相关信息 可点击分享或者跳转,将链接地址进行发布分享 请在手机端打开访问 访问商品主要模板文件路径目录 咸鱼&#…

K8S-YAML

一、Kubernetes对象的描述 kubernetes中资源可以使用YAML描述(如果您对YAML格式不了解,可以参考YAML语法),也可以使用JSON。其内容可以分为如下四个部分: typeMeta:对象类型的元信息,声明对象…

软件是什么?前端,后端,数据库

软件是什么? 由于很多东西没有实际接触,很难理解,对于软件的定义也是各种各样。但是我还是不理解,软件开发中的前端,后端,数据库到底有什么关系呢! 这个问题足足困扰了三年半,练习时…

创建SERVLET

创建SERVLET 要创建servlet,需要执行以下任务: 编写servlet。编译并封装servlet。将servlet部署为Java EE应用程序。通过浏览器访问servlet。编写servlet 要编写servlet,需要扩展HttpServlet接口的类。编写servlet是,需要合并读取客户机请求和返回响应的功能。 读取和处…

基于Mcrosemi M2S090T FPGA 的 imx991 SWIR的SLVS解码(一)

目录 一、平台介绍 二、器件的简介 1、imx991 SWIR Image Sensor 2、M2S090T 三、工程 1、imx991寄存器配置 一、平台介绍 工程开发平台:Libero Version:20231.0.6 Release:v2023.1 文本编辑器:Sublime text3 二、器件的简介 1、imx991 SWIR I…

K8s调试积累

文章目录 一、K8S 集群服务访问失败?二、K8S 集群服务访问失败?三、K8S 集群服务暴露失败?四、外网无法访问 K8S 集群提供的服务?五、pod 状态为 ErrImagePull?六、探测存活 pod 状态为 CrashLoopBackOff?七…

postman导入https证书

进入setting配置中Certificates配置项 点击“Add Certificate”,然后配置相关信息 以上配置完毕,如果测试出现“SSL Error:Self signed certificate” 则将“SSL certificate verification”取消勾选

【车载开发系列】Autosar DCM诊断管理模块

【车载开发系列】Autosar DCM诊断管理模块 【车载开发系列】Autosar DCM诊断管理模块 【车载开发系列】Autosar DCM诊断管理模块一. DCM模块概念二. DCM模块与Autosar其他模块关系1)Dcm和PduR的交互2)Dcm和ComM模块的交互3)Dcm和Dem的交互4&a…

Maven(五)如何只打包项目某个模块及其依赖模块?

目录 一、背景二、解决方案三、补充3.1 提出疑问3.2 解答 一、背景 在 SpringCloud 微服务框架下,会存在多个模块。当我们需要对其中某一个服务打包的时候,需要将该服务依赖的模块一起打包更新,如果项目比较小的话我们可以直接将项目中的所有…

C++ memmove 学习

memmove&#xff0c;将num字节的值从源指向的位置复制到目标指向的内存块。 允许目标和源有重叠。 当目标区域与源区域没有重叠则和memcpy函数功能相同。 宽字符版本是wmemmove&#xff0c;安全版本加_s&#xff1b; #include "stdafx.h" #include<iostream&g…

Addressables(2) ResourceLocation和AssetReference

IResourceLocation var op Addressables.LoadResourceLocationsAsync(key); var result op.WaitForCompletion(); 把加载的Key塞进去&#xff0c;不难看出&#xff0c;IResourceLocation可以用来获得资源的详细信息 很适合用于更新分析&#xff0c;或者一些检查工具 AssetR…