Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/234.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 使用Git(cordova)处理多应用程序项目的正确方法_Android_Ios_Git_Cordova_Ionic Framework - Fatal编程技术网

Android 使用Git(cordova)处理多应用程序项目的正确方法

Android 使用Git(cordova)处理多应用程序项目的正确方法,android,ios,git,cordova,ionic-framework,Android,Ios,Git,Cordova,Ionic Framework,我希望我能用一句话来问这个问题,但我没那么简洁:) 我开发了一个cordova应用程序,我把它变成了git回购。后来这个应用程序变成了30多个应用程序——基本上都是一样的,只是品牌不同而已 我决定使用的方法是将我的原始应用程序保留为“主应用程序”,然后为每个品牌版本创建分支。我总是对“master”进行编辑,然后将这些更改拉入/合并到每个分支中。它们都共享98%的相同代码,所以这似乎是有道理的 总的来说,它似乎工作正常(在应用程序2上),但我遇到了一件非常烦人的事情,我想不出来 每次我在分支之间

我希望我能用一句话来问这个问题,但我没那么简洁:)

我开发了一个cordova应用程序,我把它变成了git回购。后来这个应用程序变成了30多个应用程序——基本上都是一样的,只是品牌不同而已

我决定使用的方法是将我的原始应用程序保留为“主应用程序”,然后为每个品牌版本创建分支。我总是对“master”进行编辑,然后将这些更改拉入/合并到每个分支中。它们都共享98%的相同代码,所以这似乎是有道理的

总的来说,它似乎工作正常(在应用程序2上),但我遇到了一件非常烦人的事情,我想不出来

每次我在分支之间切换时,platforms/ios和platforms/android目录都会被无关文件阻塞。由于应用程序的品牌/名称不同,一些目录/额外文件会保留下来。即使我检查并删除了它们,我仍然无法无错误地构建,除非我:

-离子平台rm-ios
-离子平台添加ios

…这很简单,但我必须移动所有类型的自定义本机代码文件。。看来我应该能更好地处理这件事


我尝试将“platforms”目录添加到.gitignore,但随后遇到了其他问题。我可能不得不重新考虑这种方法,但有没有建议我如何构造这些使用大部分相同代码的应用程序?

将平台添加到.gitignore是个好主意。你可能想从那里开始。你遇到了什么问题?我管理了一个应用程序的代码库,该应用程序的品牌超过3000次。我所做的是创建一个构建系统,根据包含每个品牌独特信息的数据库生成源代码。基本上是一个定制的构建系统。不同的分支机构可能有一天会对你失去控制。谢谢!gitignore的问题是,在切换分支时,我会从其他构建中提取工件文件。不过,我又回到了那个话题。根据您的评论,我已经改变了构建方法。我仍将使用分支,但每次签出分支时,我都会自动压缩当前平台目录并将其存储在存档中,然后切换到新分支并从存档中获取其压缩代码,就地解压缩并自动更新可能已更改的自定义ios/android本机代码。听起来很复杂,但这让我的生活更轻松了…给.gitignore添加平台是个好主意。你可能想从那里开始。你遇到了什么问题?我管理了一个应用程序的代码库,该应用程序的品牌超过3000次。我所做的是创建一个构建系统,根据包含每个品牌独特信息的数据库生成源代码。基本上是一个定制的构建系统。不同的分支机构可能有一天会对你失去控制。谢谢!gitignore的问题是,在切换分支时,我会从其他构建中提取工件文件。不过,我又回到了那个话题。根据您的评论,我已经改变了构建方法。我仍将使用分支,但每次签出分支时,我都会自动压缩当前平台目录并将其存储在存档中,然后切换到新分支并从存档中获取其压缩代码,就地解压缩并自动更新可能已更改的自定义ios/android本机代码。听起来很复杂,但这让我的生活更轻松。。。