Git多人协同远程开发

news2024/11/29 10:50:03

1. 李四(项目负责人)操作步骤

  1. 在github中创建远程版本库testgit
  2. 将基础代码上传⾄testgit远程库
  3. 远程库中基于main分⽀创建dev分⽀
  4. 将 githubleaflife/testgit 共享给组员
  5. 李四继续在基础代码上添加⾃⼰负责的模块内容

2. 张三、王五(组员)操作步骤

  1. 在桌⾯新建zhangsan⽂件夹
  2. 登录⾃⼰的github账户中
  3. GitHub搜索githubleaflife/testgit fork到⾃⼰的账户中
  4. 下载源码到本地新增模块功能

3.协同开发过程中遇到问题

上传代码到远程库
李四负责人

➜  ~ cd 桌面
➜  桌面 mkdir lisi_fuzeren
➜  桌面 cd lisi_fuzeren 
➜  lisi_fuzeren git clone git@github.com:flymeawei/testgit.git
正克隆到 'testgit'...
remote: Enumerating objects: 8, done.
remote: Counting objects: 100% (8/8), done.
remote: Compressing objects: 100% (5/5), done.
remote: Total 8 (delta 1), reused 4 (delta 1), pack-reused 0
接收对象中: 100% (8/8), 完成.
处理 delta 中: 100% (1/1), 完成.
➜  lisi_fuzeren ls
testgit
➜  lisi_fuzeren cd testgit 
➜  testgit git:(main) ls
hello.py  LICENSE  README.md
➜  testgit git:(main) ls -a
.  ..  .git  .gitignore  hello.py  LICENSE  README.md
➜  testgit git:(main) cat hello.py 
i = 10
➜  testgit git:(main) vi hello.py 
➜  testgit git:(main) ✗ git branch
➜  testgit git:(main) ✗ 
➜  testgit git:(main) ✗ git add hello.py
➜  testgit git:(main) ✗ git commit -m "新建项目基础代码"
[main f3aa3f5] 新建项目基础代码
 1 file changed, 1 insertion(+), 1 deletion(-)
➜  testgit git:(main) git status                      
位于分支 main
您的分支领先 'origin/main' 共 1 个提交。
  (使用 "git push" 来发布您的本地提交)

无文件要提交,干净的工作区
➜  testgit git:(main) git pull --rebase origin main
来自 github.com:flymeawei/testgit
 * branch            main       -> FETCH_HEAD
当前分支 main 是最新的。
➜  testgit git:(main) git push -u origin main
枚举对象中: 5, 完成.
对象计数中: 100% (5/5), 完成.
使用 2 个线程进行压缩
压缩对象中: 100% (2/2), 完成.
写入对象中: 100% (3/3), 319 字节 | 319.00 KiB/s, 完成.
总共 3 (差异 1),复用 0 (差异 0)
remote: Resolving deltas: 100% (1/1), c

张三负责人

  ~ cd 桌面
➜  桌面 ls
'19 芒果头条项目'   FlaskProjects   PythonProjects   zs_fuzeren
 DjangoProjects     lisi_fuzeren    test
➜  桌面 cd FlaskProjects 
➜  FlaskProjects git clone git@github.com:flymeawei/testgit.git
正克隆到 'testgit'...
remote: Enumerating objects: 11, done.
remote: Counting objects: 100% (11/11), done.
remote: Compressing objects: 100% (7/7), done.
remote: Total 11 (delta 2), reused 6 (delta 1), pack-reused 0
接收对象中: 100% (11/11), 完成.
处理 delta 中: 100% (2/2), 完成.
➜  FlaskProjects ls
flaskProject01  testgit
➜  FlaskProjects ls -a
.  ..  flaskProject01  testgit
➜  FlaskProjects cd testgit 
➜  testgit git:(main) ls
hello.py  LICENSE  README.md
➜  testgit git:(main) ls -a
.  ..  .git  .gitignore  hello.py  LICENSE  README.md
➜  testgit git:(main) cat hello.py 
# 这是基础代码
➜  testgit git:(main) vi hello.py 
➜  testgit git:(main) ✗ git add hello.py
➜  testgit git:(main) ✗ git commit -m "张三的内容"
[main 3cf9029] 张三的内容
 1 file changed, 1 insertion(+)
➜  testgit git:(main) ls
hello.py  LICENSE  README.md
➜  testgit git:(main) cat hello.py 
# 这是基础代码
这是张三的代码
➜  testgit git:(main) 
➜  testgit git:(main) 
➜  testgit git:(main) git status
位于分支 main
您的分支领先 'origin/main' 共 1 个提交。
  (使用 "git push" 来发布您的本地提交)

无文件要提交,干净的工作区
➜  testgit git:(main) git pull --rebase origin main
来自 github.com:flymeawei/testgit
 * branch            main       -> FETCH_HEAD
当前分支 main 是最新的。
➜  testgit git:(main) git push -u origin main
枚举对象中: 5, 完成.
对象计数中: 100% (5/5), 完成.
使用 2 个线程进行压缩
压缩对象中: 100% (2/2), 完成.
写入对象中: 100% (3/3), 318 字节 | 318.00 KiB/s, 完成.
总共 3 (差异 1),复用 0 (差异 0)
remote: Resolving deltas: 100% (1/1), completed with 1 local object.
To github.com:flymeawei/testgit.git
   f3aa3f5..3cf9029  main -> main
分支 'main' 设置为跟踪来自 'origin' 的远程分支 'main'。
➜  testgit git:(main) git status                   
位于分支 main
您的分支与上游分支 'origin/main' 一致。

无文件要提交,干净的工作区
➜  testgit git:(main) 

在这里插入图片描述

王五负责人

➜  ~ cd 桌面/ww_fuzeren 
➜  ww_fuzeren git init
已初始化空的 Git 仓库于 /home/sanha/桌面/ww_fuzeren/.git/
➜  ww_fuzeren git:(master) git checkout -b dev
切换到一个新分支 'dev'
➜  ww_fuzeren git:(dev) git clone git@github.com:flymeawei/testgit.git
正克隆到 'testgit'...
remote: Enumerating objects: 14, done.
remote: Counting objects: 100% (14/14), done.
remote: Compressing objects: 100% (9/9), done.
remote: Total 14 (delta 3), reused 8 (delta 1), pack-reused 0
接收对象中: 100% (14/14), 完成.
处理 delta 中: 100% (3/3), 完成.
➜  ww_fuzeren git:(dev)ls
testgit
➜  ww_fuzeren git:(dev) ✗ cd testgit 
➜  testgit git:(main) ls
hello.py  LICENSE  README.md
➜  testgit git:(main) vi hello.py 
➜  testgit git:(main) ✗ git add hello.py
➜  testgit git:(main) ✗ git commit -m "王五新增的代码"
[main ea9a991] 王五新增的代码
 1 file changed, 2 insertions(+), 1 deletion(-)
➜  testgit git:(main) git status
位于分支 main
您的分支领先 'origin/main' 共 1 个提交。
  (使用 "git push" 来发布您的本地提交)

无文件要提交,干净的工作区
➜  testgit git:(main) git pull --rebase origin main
来自 github.com:flymeawei/testgit
 * branch            main       -> FETCH_HEAD
当前分支 main 是最新的。
➜  testgit git:(main) git push -u origin main     
枚举对象中: 5, 完成.
对象计数中: 100% (5/5), 完成.
使用 2 个线程进行压缩
压缩对象中: 100% (2/2), 完成.
写入对象中: 100% (3/3), 330 字节 | 330.00 KiB/s, 完成.
总共 3 (差异 1),复用 0 (差异 0)
remote: Resolving deltas: 100% (1/1), completed with 1 local object.
To github.com:flymeawei/testgit.git
   3cf9029..ea9a991  main -> main
分支 'main' 设置为跟踪来自 'origin' 的远程分支 'main'。
➜  testgit git:(main) 

在这里插入图片描述

Pull request
在这里插入图片描述

new pull request
在这里插入图片描述

合并
在这里插入图片描述


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

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

相关文章

【树和二叉树】数据结构二叉树和树的概念认识

前言:在之前,我们已经把栈和队列的相关概念以及实现的方法进行了学习,今天我们将认识一个新的知识“树”!!! 目录1.树概念及结构1.1树的概念1.2树的结构1.3树的相关概念1.4 树的表示1.5 树在实际中的运用&a…

SpringBoot:拦截器,过滤器,打包与运行

目录 一、拦截器 1、创建实现类实现HandlerInterceptor 接口 2、注册拦截器对象 二、过滤器 拦截器与过滤器区别 三、打包运行windows版(jar包,war包) 1、打包为jar包 2、打包为 war包 一、拦截器 拦截器(Interceptor )是一种动态拦截…

二叉搜索树——BinarySearchTree

致前行的人: 要努力,但不要着急,繁花锦簇,硕果累累,都需要过程! 目录 1.二叉搜索树 1.1二叉搜索树概念 1.2二叉搜索树的操作 1.3二叉搜索树的实现 2.4二叉搜索树的应用 2.5二叉搜索树的性能分析 2.二…

不用U盘 重装系统(别再浪费钱去电脑城装系统了)

不用U盘 重装系统(别再浪费钱去电脑城装系统了) 首先打开浏览器,搜索MSDN回车,选择第一个网站 点击操作系统 往下拉找到win10专业版 选择(business editions)和 (x64) 打开迅雷,点击新建&a…

高德地图开发实战案例:使用Loca数据源展示海量点标注(海量点、自定义分类图标、聚合、信息提示、3D控件)

系列文章目录 高德地图开发实战案例:弧线连接线标注高德地图开发智慧社区网格化数据格式产生的无法单击事件的解决方案高德地图进阶开发实战案例(1):webAPI坐标转换和jsAPI批量转换高德地图进阶开发实战案例(2):电子围栏(多边形的绘制)的展示高德地图进…

与chatGPT的第一次亲密接触

最近,chatGPT火了,不管传统媒体,还是各种自媒体平台都在说它。今天我突然也想注册一个玩玩,注册前2步还行,但是等点开邮箱校验时,打开网页显示: 上网查了一下,没向中国开放服务&…

Java高手速成 | 对象-关系的映射、映射对象标识符与JPA API的级联操作

01、对象-关系的映射概念 Java对象和关系数据库存在一些简单的映射关系,比如Customer类与CUSTOMERS表映射,一个Customer对象与CUSTOMERS表中的一条记录映射,Customer类的name属性与CUSTOMERS表的NAME字段映射。 但是,毕竟对象模型…

有了独自开,一个人就是一个团队

文章目录 简单介绍优点 优秀案例平台福利总结 简单介绍 独自开是一个基于商品与服务交易全流程的PaaS开发平台。对于开发者,独自开可以协助开发者一个人独自开发一套系统。 优点 独自开有独创的分层标准化平台架构,可以满足系统的任何个性化需求。 …

PICT:一款功能强大的信息收集和事件响应工具

关于PICT PICT是一款功能强大的信息收集和事件响应工具,该工具可以帮助广大研究人员在受感染的终端节点中收集各种信息,以辅助进行网络安全事件应急响应。这些数据可能不够完整,但确实能够捕捉到很多有价值的取证信息。如果你想要获取完整的…

搜广推 隐语义模型(LMF)与矩阵分解(MF)

😄 MF的出现就是为了解决CF处理稀疏矩阵能力弱的问题,增强泛化能力。挖掘用户和物品的隐含兴趣和隐含特征。 ⭐ 在这里隐语义模型LMF在这里也就是利用MF对用户评分矩阵分解出来的用户隐向量矩阵、物品隐向量矩阵,然后基于这两个矩阵就可以计算得分,完成推荐任务。 🚀 MF…

我猜这将是程序员副业接单赚外快的最好的平台!

文章目录一、前言二、【独自开】介绍2.1 分层标准化平台架构2.2 集成第三方数字接口2.3 支持各个行业的系统定制开发三、如何在【独自开】赚钱获取收益?3.1 如何称为【独自开】开发者?3.2 如何领取任务赚取收益四、【独自开】优秀案例4.1 家政服务平台4.2 优选商城五、【独自…

设计模式之观察者模式,以C++为例。

今天来准备浅浅的过一下观察者模式,观察者模式也叫作:发布者订阅者模式。该模式的特点是多个对象依赖一个对象,为一对多依赖关系,每当一个对象改变时,所有依赖它的对象都会得到通知并自动更新,该模式主要维…

MySQL数据同步到ES集群(MySQL数据库与ElasticSearch全文检索的同步)

简介:MySQL数据库与ElasticSearch全文检索的同步,通过binlog的设置对MySQL数据库操作的日志进行记录,利用Python模块对日志进行操作,再利用kafka的生产者消费者模式进行订阅,最终实现MySQL与ElasticSearch间数据的同步…

C++类和对象:面向对象编程的核心。| 面向对象还编什么程啊,活该你是单身狗。

👑专栏内容:C学习笔记⛪个人主页:子夜的星的主页💕座右铭:日拱一卒,功不唐捐 文章目录一、前言二、面向对象编程三、类和对象1、类的引入2、类的定义Ⅰ、声明和定义在一起Ⅱ、声明和定义分开Ⅲ、成员变量命…

ChatGPT 怎么注册使用最新详细教程-新手小白

2022年11月30日chatGPT发布,一年时间风靡全美,甚至有调查,美国89%的大学生用chatGPT做作业,微软用100亿美元投资了该公司,这也引起了google的紧张,神经语言、人工智能、颠覆未来,成为描述chatGP…

VR博物馆带你走进云端,感受数字时代的力量

博物之志,以文化人,为了打破传统线上静态的博物馆图片,VR博物馆给民众带来了全新的视听体验,突破天气、交通、客流量等传统旅游限制问题,在VR全景中还能将线下博物馆的多媒体影响也逐一呈现出来,接下来让我…

ChatGPT给程序员人手一个,这很朋克(由ChatGPT编写)

目录ChatGPT、程序员、朋克为什么程序员需要ChatGPT,为什么这很朋克总结ChatGPT、程序员、朋克 本文由ChatGPT编写。 ChatGPT是由OpenAI开发的大型语言模型。它的核心功能是生成人类语言文本,因此有多种应用场景,如文本生成、对话生成、文本…

FlexGanttFX 11.12.6 Crack

FlexGanttFX 是 JavaFX 的调度和资源规划组件。它允许开发人员通过 CSS 以及可插入渲染器和编辑策略的使用来自定义其外观和行为的每个方面。FlexGanttFX 利用场景图/场景节点和画布 API 的完美组合,确保即使是最大的数据集也可以快速呈现。FlexGanttFX 不仅外表漂亮…

【java】遍历set集合,iterator遍历TreeSet,增强for循环遍历,set排序

目录 1. 增强for循环遍历(底层还是用iterator实现的)2.iterator遍历TreeSet3.说明4.补充测试用的集合来自上篇:https://blog.csdn.net/qq_43622777/article/details/128924730 1. 增强for循环遍历(底层还是用iterator实现的&#…

服务异步通信 RabbitMQ

服务异步通信 RabbitMQRabbitMQ快速入门RabbitMQ概述和安装常见消息模型HelloWorld案例SpringAMQPBasic Queue 简单队列模型消息发送消息接收测试WorkQueue消息发送消息接收测试能者多劳总结发布/订阅Fanout声明队列和交换机消息发送消息接收总结Direct基于注解声明队列和交换机…