我正在编写一个iOS应用程序,该应用程序以免费版本开头,并且,随着许多应用程序,在付费应用程序或通过应用内购买提供扩展功能。
我目前使用mercurial作为免费应用程序的版本控制,现在我们也想发布付费应用程序。我想知道是否有任何方法(理想情况下,但不一定,与mercurial)保持它们共享代码库的主要部分,以便一个错误修正自动影响另一个,但显然保持差异分开。
或者,是否有使用分支或类似方法的方法可以轻松地手动合并更改?
我尝试在网上搜索,但我不确定我是否找不到正确的关键词,否则这是不可能的。而且,我从来没有完全理解分支。
答案 0 :(得分:2)
你至少有两个模特
<强>科基于强>
两个分支
每个任务的分支
单分支中的MQ补丁
答案 1 :(得分:2)
我假设您将付费和免费版本保密。
为什么不将所有内容放在一起并通过编译器将这两者区分开来?因此,“制作免费版本”和“制作付费版本”会产生影响。
如果你坚持将付费版和免费版的历史分开,我认为使用“免费”,“付费”和“分享”三个分支。不断将“共享”合并到其他两个(或建议为Lazy Badger,使用“仅付费”分支。)
据我所知,Python使用forward-porting,他们的做法应该会有所帮助。