我将描述我想要实现的场景。我对使用Subversion是否可行感兴趣:
问题:
答案 0 :(得分:0)
你所做的是一种有效的方法,你的问题是将更改合并到主干上然后合并它们。
首先,当你发布时,在那时创建一个分支 - 这是你发布版本的代码。如果你愿意,你可以直接修改它,这听起来就像你最好的工作方式。当您在那里进行错误修复时,只需将更改直接合并到主干。您不需要重新定义(或重新集成)或任何东西,只需更改已更改的修订并将它们合并到主干上。这非常简单 - 您正在进行SVN提供的最简单的合并(合并一系列修订),只需选择包含所需更改的修订并将它们合并到主干上。
在这种情况下,您可能会遇到冲突,但请记住,svn通过区分源更改并将其应用于目标来执行合并。如果将一半的代码移出另一个文件,然后尝试使用任何工具进行合并,那么您将遇到困难。
Mercurial可能会更好 - 我建议尝试它,创建一个repo,添加一些文件,分支,认真重构你的文件,然后进行一些小改动并将其合并。看看你是否最终遇到了SVN会遇到的类似问题(因为你正在努力做很多工作,而且我认为任何计算机都不会在如此广泛的变化中擅长)。
当然,更好的答案是停止这么多重构您的代码看起来像一个不同的产品!
答案 1 :(得分:0)
我在这个答案中找到了至少部分答案:What are you supposed to do with old SVN branches?
基本上,我可以在每次发布后删除bugfixing分支,然后创建一个具有相同名称的新分支。这是不是一个好习惯,我不知道。