在尝试坚持 [ http://nvie.com/posts/a-successful-git-branching-model 的分支模型
,即使用功能分支并将它们合并回开发分支时,我有时会遇到以下情况:
功能base
(既是功能分支又是 Python 包)被认为是完整的并合并到develop
. stuff
现在,需要的功能 (=branch&package)base
被分支出来,在开发时我意识到stuff
需要一些修改/增强,base
从一开始就应该存在。那么我应该在哪个分支修改包base
?
- 在分支中这样做
stuff
似乎是错误的,因为无论何时(以及是否)合并回来,base
都应该成为修改的一部分。dev
stuff
- (重新)分支到
base
,修改,合并到两者develop
,stuff
另一方面会创建许多合并,我不确定合并到功能分支是否是一种好习惯。特别是如果它只是一个小而重要的修改 - 并且提交两次(通过
git cherry-pick
)也感觉不对。 base
变成一个git submodule
听起来有点矫枉过正的声音- 重新定位
stuff
到更新develop
将使历史看起来更好,但如果其他人拉出原始分支会导致常见问题stuff
- 在我的单开发人员案例中不是问题,但这个问题的可能性表明我正在做一些更根本错误的事情。 ..