news 2026/5/1 10:24:55

Git - 多人协作流程

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Git - 多人协作流程

目录

多人协作流程

分支推送协作

分支拉取协作

删除远程分支


多人协作流程

1.开发者A:在远程仓库中有一个testgit1仓库,点击管理 -> 左侧仓库成员管理 -> 申请列表 -> 邀请用户,将连接复制,发送给邀请的用户。

2.开发者B:接受邀约后,可在仓库中看到开发者A的仓库。

3.开发者A:

  • 点击管理 -> 左侧仓库成员管理中查看到仓库中的其他成员,并赋予身份(例如:管理者、开发者、测试者等),不同的身份有不同的管理权限。
  • 拉取远程仓库到本地仓库,使两个仓库内容基本一致。
  • 起项目框架,写内容,经本地仓库推送到远程仓库中。

4.开发者B:

  • 开发者B不能在testgit1仓库本仓库中进行操作(重点),如果在这个仓库中操作,就使修改了开发者A的库;
  • 点击Fork,选中自己,点击确定
  • 点击头像 -> 个人主页 -> 仓库,会发现变成了两个库,一个是开发者A的库(开发者A/testgit1),一个是开发者B的库(开发者B/testgit1),应该在生成的开发者B的这个库中操作。
  • 将这个库克隆下来,然后进行添加用户、邮箱,和远程仓库连接,写代码文件。
  • vi B.txt,然后提交,并推送到远程仓库(若有冲突,将远程仓库拉取到本地仓库,并解决冲突)。
  • 要同步给开发者A,在唱K中,选中Pull Requests -> 新建Pull Request

5.开发者A:

  • 开发者A在 【开发者A/testgit1】 这个库中,并不能看到开发者B提交的内容。
  • Pull Requests会接收到请求 -> 点进去,进行审核 -> 没问题,点击审核通过,测试通过
  • 点击合并分支,然后点击Pull RequestPull Request
  • 此时,就能看到开发者B添加的内容

6.开发者C:

  • 与开发者B一样进入开发者A的仓库后,点击Fork,生成一个自己的库(开发者C/testgit1)
  • 进入【开发者C/testgit1】仓库,点击仓库后的刷新,刚刚开发者A操作合并开发者B的内容,这里会显示。

到处,多人协同操作流程完毕。


分支推送协作

在testgit1仓库上操作:

1. 创建dev分支

// 创建分支并切换到分支 git checkout -b dev

2. 推送分支

  • git push无法把分支dev推送到远程仓库
  • 方法一:使用下面的命令推送分支
    • // 方法一 git push --set-upstream origin dev
    • 同时本地也关联了远程分支dev
    • git branch -av
  • 方法二:使用带 -u 参数的命令
    • // 方法二 git push -u origin dev

分支拉取协作

在testgit01仓库上操作:

  • 发现有远程分支,但是没有本地的dev分支

  • 这时可以创建本地的dev分支,此刻也可以修改本地分支的名字

  • 创建分支并且切换到dev分支上,而且该分支和远程分支dev关联

  • 方法一:使用 -b 参数

    • // git checkout -b 本地分支名 远程仓库名/远程分支名 git checkout -b dev origin/dev
  • 方式二:使用 --track 参数

    • // git checkout --track 远程仓库名/远程分支名 git checkout --track origin/dev2

删除远程分支

在testgit01仓库上操作:

1. 删除本地仓库分支dev2

  • 删除之后,会发现远程的分支dev2关联还在
  • git branch -d dev2

2. 删除远程分支关联

  • git push origin --delete dev2

在testgit1仓库上操作:

3. 通过另一个用户来查看本地对应的远程分支的时候可以看到远程分支的变化

  • git remote show origin

4. 查看origin远程对于的分支

  • git remote prune origin
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/1 7:11:31

招生宣传管理系统(11477)

有需要的同学,源代码和配套文档领取,加文章最下方的名片哦 一、项目演示 项目演示视频 二、资料介绍 完整源代码(前后端源代码SQL脚本)配套文档(LWPPT开题报告)远程调试控屏包运行 三、技术介绍 Java…

作者头像 李华
网站建设 2026/5/1 7:11:23

【Java毕设源码分享】基于springboot+vue的t大学生在线论坛系统设计与实现(程序+文档+代码讲解+一条龙定制)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/5/1 6:02:56

【Java毕设源码分享】基于springboot+vue的电影院订票信息管理系统设计与实现(程序+文档+代码讲解+一条龙定制)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/5/1 6:07:11

64、探索 Ubuntu 中的 C/C++ 编程与 Mono 开发

探索 Ubuntu 中的 C/C++ 编程与 Mono 开发 1. C 与 C++ 基础 C 语言在 Linux 内核开发中占据主导地位,这也是 Linux 能够适配多种不同 CPU 的原因。C++ 是 C 语言的面向对象扩展,由于 C++ 是 C 的超集,C++ 编译器可以正确编译 C 程序,并且可以在 C++ 中编写非面向对象的代…

作者头像 李华
网站建设 2026/5/1 8:14:15

OJ刷题小结(12.13~12.14)

题目1:求n个实数去掉最大最小值后的平均值(快乐刷题周末B)问题:思路:找到最大值最小值的下标,将0赋值给该下标对应的数组元素,再遍历数组,将所有元素相加,最后/&#xff…

作者头像 李华