git -多人协作+远程仓库

一. 前言

终于快要简单的介绍完git系列的操作了。在介绍GitHub上进行多人协作开发之前,要先说明一些内容

  • 在之前的git分支简介和git详解这两篇文章中,分支合并以及切换等操作只是在本地进行,没有进行远程操作,只是在本地版本库进行提交。在本地版本库即可完成大部分操作。
  • 链接远程仓库,即在GitHub网页端建立仓库,并把它同本地仓库链接起来,这样就可以把你的代码推送到远端,与此同时,你的伙伴也可以从远端垃取你的代码,推送他的代码,并且可以合并你们的代码,实现合作开发
  • 在实际开发中,我们应该按照几个基本原则进行分支管理:
    main分支应该是非常稳定的,平时不能在上面干活;
    你和你的小伙伴们每个人都在自己的dev分支上干活,每个人都有自己的分支,确定修改完成可以正常运行后,往main分支上合并就可以了。

二. 合并分支(简单流程)

下面先来简单的介绍一下合并分支的流程

  • 假设我现在在我自己的分支GMH上,并且完成了一些修改
$ git checkout GMH  //在我自己的分支GMH上
$ git add .         //提交到暂存区
$ git commit "test"    //提交到本地版本库
$ git push origin GMH    //推送到GMH的远程仓库

到此为止我们先提交到了自己的分支上

  • 接下来我们尝试提交到主分支
$ git checkout main //切换到主分支
$ git pull  //先把主分支上最新的提交拉取下来,多人开发保险
$ git merge GMH //把自己分支的代码合并到主分支上
$ git push origin main//把本地主分支的内容提交到远端
  • 拉取主分支的代码后合并主分支的过程
$ git checkout main //切换到主分支
$ git pull = git fetch + git merge //拉取到本地主分支
$ git checkout GMH //切换回我的分支
$ git merge main //把本地主分支的内容合并到自己的本地分支上 

关于远程仓库和本地仓库以及合并分支的情况,我按我的理解画了一幅图,希望可以帮助理解一下这个概念
在这里插入图片描述

三. 案例分析

远程分支多人开发的案例介绍请看这篇
注意:

  1. 请分清楚,实际origin/main,本地main,本地显示的origin/main
    如果你在本地的 master 分支做了一些工作,在同一段时间内有其他人推送提交到 git.ourcompany.com 并且更新了它的 master 分支,这就是说你们的提交历史已走向不同的方向。 即便这样,只要你保持不与 origin 服务器连接(并拉取数据),你的 origin/master 指针就不会移动。

在这里插入图片描述

  1. 与给定的远程仓库同步数据,git fetch

在这里插入图片描述

  • 推送(push)到自己分支的远端时,步骤和之前单人开发相同,没有什么差别
  • 在你推送(push)分支到主分支时,在push前请一定要pull(拉取)一下远端的最新代码
  • 当你push到远端主分支之后,对于你的小伙伴来说,他的本地主分支就已经不是最新了,如果他愿意现在就可以再pull一下咯。在提交之前,也要在拉取(pull)一下。
  • 对很多开发人员而言,一打开电脑,马上先git pull,拉取最新的。然后进行常规开发,
    开发完毕之后,在git push之前,还需要使用git pull再拉取一遍。
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值