假设我有两个版本的库并行开发:
最后我有了三个分支机构:
我的树枝弄错了吗?我应该在哪里提交1.0和2.0的新特性?现在,我在其各自的分支中提交每个特性。在1.0分支中执行1.0错误修复,然后将其合并到2.0分支。
什么应该包含master
发布于 2012-09-30 10:13:49
考虑到所有答案都没有引用任何源,而且都自相矛盾,我决定遵循学说工作流程 (考虑到我还在开发一个PHP库,Doctrine是一个“现代”/recent项目)。
理论存放处拥有以下主要分支:
原则/硕士是HEAD源代码总是反映最新版本的分支。每个发布的稳定版本都将是一个在理论/发布-*分支中标记的提交。每个发布的不稳定版本都将是理论/主分支中的标记提交。
简而言之,它非常类似于SVN工作流:
我只是不知道如果我有一个与1.0和2.0并行的3.0版本(一个未来的实验版本),我会做什么。我想我将创建一个3.0分支,并将2.0放在主服务器上(给定2.0是“下一个”版本)。
发布于 2012-09-29 19:14:26
这里没有正确或错误的道路。对于某些项目来说,将master看作“不稳定”分支是很有用的,因此您的大部分开发工作都集中在那里。(通常情况下,在自己的分支中开发新特性并将其合并以掌握这些特性是有好处的。)现在,使用您的版本分支,您可以很容易地合并或者从主目录中选择更改。根据项目的工作方式,您可能需要一个策略,说明版本分支应该始终处于良好状态,并且任何提交都应该增加版本号。
拥有一个不移动的主分支非常方便,因为您可以设置该分支一次,并期望git拉始终为您获得项目的最新代码。
发布于 2012-09-29 19:15:16
所有“流血边缘”代码所属的分支的约定名称中的master。如果您对代码的特定版本进行了分支,那么可以对它们进行提交修复,但是可以在Master中改进您的代码,然后使用您的版本号从master创建分支。
https://stackoverflow.com/questions/12655504
复制相似问题