master是主干,开发在分支中进行,开发完成后将分支(branch)的代码合并到master,测试master后再打tag。简单起见只需保留一个主干和一个分支,如果需要临时开发一个不确定且耗时的功能(例如微唐项目中的蓝牙功能)则临时从branch中拉出一个feature分支修改后合并到branch中并删除feature分支。
1、建立项目&添加协作者
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
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、建立项目&添加协作者
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
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