问题描述
我有一个要求,需要发布两个功能 X
和 Y
。这两个功能都涉及相同的文件。问题是客户可能会根据时间线和质量要求取消该功能。现在我想到了两种方法:
- 创建一个统一的分支,将合并功能
X
和Y
的更改。优点:易于合并和维护,缺点:难以删除要求的功能之一的代码。 - 创建单独的分支,最后合并以进行开发。先合并
X
,然后在合并Y
开发时解决大量的冲突。优点:易于删除代码,缺点:难以合并。
方法一
featureTaskOfY
/
/
D(Develop)<----XY<---- featureTaskOfX
方法二
D(Develop)<----X<---- featureTaskOfX
\
\
----------Y<-------featureTaskOfY
解决方法
您可以在同一个分支上同时拥有这两个功能,方法是在一次提交中提交功能 X 的所有文件,然后在另一次提交中提交所有 Y。这样,如果您必须删除任何功能,您只需还原与该功能对应的提交即可。
而且您可以在单个分支上工作,从而节省了合并冲突的麻烦。