良许Linux教程网 干货合集 Linux系统中使用Git分支协同开发

Linux系统中使用Git分支协同开发

在大型项目开发中使用多分支能够并行开发多模块任务,也避免了Bug修正时引入新功能代码。新建的分支一般都属于以下三个范畴内:发布分支(*Bugfix*分支)、特性分支和卖主分支。下面良许教程网为大家分享一下使用Git分支协同开发的具体步骤。

Linux系统中使用分支协同开发

一、发布分支

发布分支主要用作对之前提交代码的Bug修正,使修正过程和主线功能开发能够并行开展。

二、特性分支

特性分支主要用作将某个功能模块和开发主线独立出来,适合于开发周期长、实验性功能等具有特定特性的功能模块开发。

三、卖主分支

所谓卖主分支是在版本库中专门创建一个和上游同步的分支,一旦有上游代码发布就捡入到卖主分支中。

不管是何种分支,其操作过程无非一下步骤

1. 创建分支

(1)可以通过

git branch

然后切换到新分支:

git checkout newbranch

(2)或者直接

git checkout –d newbranch

默认是从最新commit即HEAD指向提交创建branch,此种方式一般用作临时分支,接受改动,并最终由master分支merge后删除。

但是在bug修改或者新模块开发等都需要从历史提交创建branch,此时在上面语句之后加上commit id或对应的tag。

2.    在新分支上开发

在这里通过git rev-parse查看不同分支的指向是否相同。

而git cherry命令可用于查看当前领先于origin的提交。

在新分支上的开发任务(开发任务可以是bug修复或是新模块开发)结束后,需要将新分支上的提交合并到主分支,这里大致上可以分为三种情况:

(1)使用merge

首先新建分支并完成工作commit后切换到主分支master,在主分支中“合并”创建的分支。如下:

img

注意merge后要指明将合并分支的名称。

(2) 使用cherry-pick

img

首先切换到master分支,然后对需要合并到主分支的newbranch历史提交执行拣选。

这种方式与方式(1)的不同之处是可以有选择的合并newbranch的提交而不是全部merge。

(3) 使用rebase

变基。使用变基操作,可以使分支的合并更清晰,审核更方便。操作:

在这里为了模拟master分支的改变我做了两次空提交,然后切换到newbranch执行rebase,此处的rebase操作相当于:

i)强制重置到master分支的提交

ii)将newbranch上的提交一一拣选到重置后的分支上。

img

在rebase之后还使用newbranch分支更新了远程版本库的master分支。通过rev-parse可以查看二者现在已经在一个提交上。

其它:

(1)多用户协同分支合作

在分支使用中,某一用户新建的分支可能会被其它用户使用到,如bug修复分支,可能会有多人需要工作在此分支上,那么在新建分支后,需要将此分支Push到远程版本库,以便其它用户能够pull到本地使用。

img

并且,在其它成员将branch pull到本地时不能直接checkout此分支,而是基于此分支创建新分支,如:

img

现在执行修改后提交发现问题:

img

问题是你本来的目的是想和其它成员在同一branch上协同工作,但是现在你创建了和协同branch不一致的分支,并且在远程版本库中并无此分支(如果有的话也达不到在同一分支协同的目的),解决方式是:首先将本地分支修改为协同分支名称然后在提交:

img

(2)备份分支

有时需要将本地分支进行备份,那么可以将分支推送到远程版本库。

git push origin

(3)删除分支

对于没有推送到远程版本库的分支,直接使用

git branch –d

删除,对于已经推送的则若需要将远程分支一并删除,在上述方式后使用:

git push origin :

至此关于Linux使用Git进行协同开发的方法分享结束,大家有任何问题都可以通过评论区将问题提交给我们。

以上就是良许教程网为各位朋友分享的Linux系统相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多干货等着你!

137e00002230ad9f26e78-265x300

本文由 良许Linux教程网 发布,可自由转载、引用,但需署名作者且注明文章出处。如转载至微信公众号,请在文末添加作者公众号二维码。
良许

作者: 良许

良许,世界500强企业Linux开发工程师,公众号【良许Linux】的作者,全网拥有超30W粉丝。个人标签:创业者,CSDN学院讲师,副业达人,流量玩家,摄影爱好者。
上一篇
下一篇

发表评论

联系我们

联系我们

公众号:良许Linux

在线咨询: QQ交谈

邮箱: yychuyu@163.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部