美文网首页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多人协作开发分支控制

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