我将我的应用程序作为免费和专业版发布到 android 市场。所有源代码都存储在一个 git 存储库中。
我现在想将应用程序发布到另一个应用程序市场。由于只有少数文件会更改(Android 许可),因此我正在考虑将其存档的最佳方式。
我认为一种方法是Android Library Projects。但是我可以通过使用 git 来归档类似的效果,以便我拥有两个共享一个代码库并且只有几个文件不同的存储库吗?由于我目前对git还不是很熟悉,请准确说明我需要做什么或需要注意的地方。
谢谢。
我将我的应用程序作为免费和专业版发布到 android 市场。所有源代码都存储在一个 git 存储库中。
我现在想将应用程序发布到另一个应用程序市场。由于只有少数文件会更改(Android 许可),因此我正在考虑将其存档的最佳方式。
我认为一种方法是Android Library Projects。但是我可以通过使用 git 来归档类似的效果,以便我拥有两个共享一个代码库并且只有几个文件不同的存储库吗?由于我目前对git还不是很熟悉,请准确说明我需要做什么或需要注意的地方。
谢谢。
对应用程序的所有变体使用一个 git 存储库是我存储我的方式。例如,我的一个应用程序有免费版和专业版,并且在 Android 市场和亚马逊应用商店都有提供。在 git 中,我有 3 个分支:
Master是免费版,pro是安卓市场的付费版,amzn是亚马逊应用商店的免费版。
我在 master 中进行了所有功能更改。一旦我准备好发布,我构建并测试免费版本,然后用发布号标记 master。然后我切换到 pro,并运行一个 git merge master 来引入所有新的变化。
由于pro是付费版,刚从master分支的时候,我把广告相关的代码注释掉了(因为只有几行,我觉得没必要重构),把所有的字符串改成“Some App Pro”,而不仅仅是“某些应用程序”。
在合并期间,我通常没有任何冲突,并且保留了原始修改。但如果没有,解决冲突并让 pro 分支恢复无广告非常容易。
同样对于 amzn 分支,我最初删除了对 Google 市场的所有引用,并在我准备发布时从 master 进行合并。
然后对于 pro 和 amzn,我可以构建测试和标记。
为了保持包名称的唯一性(我实际上不确定是否需要),我首先将我的活动移到新包中,即 com.whatever.free.appname、com.whatever.pro.appname.. .
为您的应用程序的新版本设置一个新分支,进行不同的更改。然后继续在主分支上工作,并在你发布之前重新设置你的新分支。