美文网首页iOS学习笔记
gitlab多人协作开发分支控制

gitlab多人协作开发分支控制

作者: 勇不言弃92 | 来源:发表于2017-03-29 09:57 被阅读1183次

master是主干,开发在分支中进行,开发完成后将分支(branch)的代码合并到master,测试master后再打tag。简单起见只需保留一个主干和一个分支,如果需要临时开发一个不确定且耗时的功能(例如微唐项目中的蓝牙功能)则临时从branch中拉出一个feature分支修改后合并到branch中并删除feature分支。


imageimage

1、建立项目&添加协作者

imageimage
imageimage
imageimage

2、初始化项目

执行下面命令

cd existing_folder
git init
git remote add origin git@255.255.255.255:XXXXXX/XXXXXX.git
git add .
git commit -m ‘初始化项目’
git push -u origin master

3、建立分支

按照下图所示建立分支分支名称约束为'branch/XXX'(例如“branch/0111”),“create from”输入 master


imageimage
imageimage

4、开发

4.1、首先创建一个项目名命名的文件夹,将代码clone到此目录中,并选择代码

git clone git@255.255.255.255:XXXXXX/XXXXXX.git

然后定位到clone的项目文件夹

cd XXXXXX

最后选择checkout主干代码还是分支代码,因为是要开发所以需要checkout分支代码,如果发布版本需要checkout主干代码

//主干
git checkout master
//分支
git checkout branch/0111

4.2、开发后合并分支代码到主干

定位到clone的项目文件夹

cd XXXXXX

项目切换owner到master,然后执行merge,第二行中的“--no-ff”一定要添加,否则不显示合并的log

git checkout master  
git merge --no-ff branch/0111 -m 'xxx'//显示Already up-to-date.说明合并成功
git push origin master//上传主干

-------------------------------------------------------------------------

-

下面这个是内部使用的版本

-

-------------------------------------------------------------------------

1、建立项目&添加协作者

imageimage
imageimage
imageimage

2、初始化项目

执行下面命令

cd existing_folder

git init

git remote add origin git@255.255.255.255:XXXXXX/XXXXXX.git

git add .

git commit -m ‘初始化项目’

git push -u origin master

3、建立分支

3.1、主分支,每个项目的develop分支为开发分支,master分支为主干分支

按照下图所示建立分支分支名称约束为'develop',“create from”输入 master


imageimage
imageimage

3.2、开发人员分支

按照上面所示方法建立开发者分支,分支名称约束为develop_name 【例如“develop_ly”或者“develop_wss”,后面加上开发者自己的标示】,“create from”输入 develop,流程与上面所说一样

4、开发

4.1、首先创建一个项目名命名的文件夹,将代码clone到此目录中,并选择代码

git clone git@255.255.255.255:XXXXXX/XXXXXX.git

然后定位到clone的项目文件夹

cd XXXXXX

最后选择checkout master和develop分支代码,创建开发者分支代码(develop_name),开发分支代码(develop)用来打包测试,如果测试成功则发布版本时需要checkout master代码

//主干
git checkout master
//开发分支
git checkout develop
//创建开发者自身分支
git checkout -b develop_ly

4.2、开发以及提交

获取开发者分支后正常开发以及提交,开发功能结束后,发起一个pull request请求合并,经过审核将代码合并到分支代码(develop)中,测试稳定通过后合并到主干代码(master)中

4.3、开发后合并开发者分支(develop_name)代码到开发分支(develop)

定位到clone的项目文件夹

cd XXXXXX

项目切换develop_name到develop,然后执行merge,第二行中的“--no-ff”一定要添加,否则不显示合并的log

git checkout develop  
git merge --no-ff develop_name -m 'xxx'//显示Already up-to-date.说明合并成功
git push origin develop//上传分支

4.4、最后测试稳定后将代码合并到主干,下面这一步由代码负责人(身份为master的管理者操作)

git checkout master  
git merge --no-ff develop -m 'xxx'//显示Already up-to-date.说明合并成功
git push origin master//上传主干

5 参考资料

git介绍

http://rogerdudler.github.io/git-guide/index.zh.html

git常用命令

http://www.ruanyifeng.com/blog/2015/12/git-cheat-sheet.html?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io

相关文章

  • gitlab多人协作开发分支控制

    master是主干,开发在分支中进行,开发完成后将分支(branch)的代码合并到master,测试master后...

  • gitlab分支管理系统(多人协作开发)

    这篇文章参考了以下文章:  1,https://www.15yan.com/story/6yueHxcgD9Z/ ...

  • DevOps开源工具

    开发工具 版本控制&协作开发 版本控制系统 Git 代码托管平台 GitLab 代码评审工具 Gerrit 版本控...

  • Frequency Number

    为什么使用Git: 能够对文件版本控制和多人协作开发拥有强大的分支特性,所以能够灵活地以不同的工作流协同开发分布式...

  • git删除缓存的远程分支列表

    在多人项目协作过程中经常会频繁添加、删除(远程)分支。当某个分支完成开发或者bugfix后可能会删除改分支,可是这...

  • 2018-06-31 Git每日命令 分支篇

    分支是Git多人协作的一个非常厉害的设计,通过多分支来区分开发环境,测试环境,生产环境等。

  • gitlab介绍与安装详情

    gitlab介绍 gitLab一个开源的git仓库管理平台,方便团队协作开发、管理。在GitLab上可以实现完整的...

  • 分支管理

    本节内容: 创建与合并分支 解决冲突 分支管理策略 bug分支 Feature分支 多人协作

  • git workflow

     git因为有分支的存在,才构成了多工作流的特色。在多人协作的项目开发中,分支很多,虽然各自在分支上互不干扰,但是...

  • Git多人协作开发流程分支管理方案

    一、主分支Master 代码库应该有一个、且仅有一个主分支:master。所有提供给用户使用的正式版本,都在这个主...

网友评论

    本文标题:gitlab多人协作开发分支控制

    本文链接:https://www.haomeiwen.com/subject/zukeottx.html