您的位置:首页 > 其它

git --分支管理策略

2015-05-29 16:52 573 查看
git 最厉害的一个功能就是其强大的分支管理。 使用分支功能可以方便的完成一些日常中一些棘手的问题。

一般的,一个优秀的项目至少有三个分支,一个是master主分支,一个develop开发分支,一个Test分支;

master 这个分支用于发布稳定的可供生产的项目版本,或者这项目开发中用于发布供项目一定阶段验收的稳定版本。总之master分支上是最稳定的。

develop分支是开发人员日常开发迭代的分支,开发人员每日开发进度都往这个分支上push,这个是开发人员每日都push的分支,其上面的功能没有经管测试人员测试,也有开发人员当日没有完善的功能,所以是不稳定的,bug是最多的。

Test分支是用于发布给测试人员测试的分支。如果项目有测试团队的话,那么开发已完成的开发功能需要先push到test分支,发布测试分支的项目给测试团队测试。通过不断迭代开发分支和测试分支之间,测试分支稳定之后,才能发布到master主分支上;

当然分支功能远远不是这点简单好处;

比如:你忙了一上午,写了很多的代码,但是生产环境突然要改一个需求,而你们开发现在已经进行了很多开发,这些功能是没有完善的还不能使用,这时,好的解决方案是,切换到master分支,在这个master分支上再建立一个分支,这个分支命名就已需求issue号命名就是了。紧急改完后发布给测试测试验证后,在发布到master上。最好切换到刚才工作的develop 分支,接着之前的开发。

再比如,你们项目开发了一个版本,但是有新公司想让你们在这个项目版本上开发属于他们公司的特定业务功能,怎么办?当然,重新建立项目开始是可以的。假设是你们既要同时推进你们目前的项目,而这个给特定客户的也需要你们这些最新的功能,重新建立项目就不好办, 除非你乐意两个不同项目之间 复制粘贴代码;git分支又可以上场了。好的方案是,在当前开发分支上为这特定建立分支,在这个分支上开发特定业务,如果需要开发分支上代码,简单,直接合并开发分支的代码就可以了;

问题来了,怎么建立分支,怎么合并分支?这里就使用tortoiseGit来演示分支创建以及合并。如何使用git命令行,可以查看这个网站,好像是git文档官方;
http://git-scm.com/book/en/v2/Git-Branching-Branches-in-a-Nutshell
创建分支



选择你是需要基于那个基点建立,可以是某一个分支,可以是某一次提交也可以是某一个tag



建立好之后,就可以切换到这个分支上去干活了。如果需要切换回来都是同样操作。



当然,切换的时候,你要记得提交commit你的改动到当前分支,否则会切换不成功。要么丢弃到当前工作内容,要么(提交)commit到分支里;

如果是使用的项目打开了ide工具,记得让它重新load一下。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: