首页 > 解决方案 > 为不同平台构建时 Ionic / Cordova 项目的源代码控制策略

问题描述

每次我需要提取或提交代码时,我都会遇到同样的问题。这是问题:

我有两台电脑,一台 Mac 和一台 Windows,后者用于 web 开发和 android 构建,另一台仅用于提取我的代码、构建 iOS 应用程序并发布它。这已经顺利运行了一段时间。但现在应用程序变得更大了,我发现 myslef 必须在 android 上安装某个版本的 ABC 插件,在 iOS 上安装另一个 XWZ。或者在一个平台上有一个插件,而在另一个平台上没有。当从一台计算机跳到另一台计算机时,这很快就变成了一场噩梦。我还得出结论,我应该对 cordova 生成的一些文件进行版本控制,例如 gradle 文件和 info.plist 以及其他一些配置文件,以便我可以更好地了解如果应用程序突然无法构建时会发生什么。更不用说每个 Windowa/MacO 一直在更新的 package.json 和 package-lock.json。

所以我想知道其他人是否面临同样的问题,你们是如何处理的?有没有更智能的解决方案?

我正在考虑创建一个脚本,该脚本在每次成功构建时将给定平台的所有配置文件(包括 package.json 和 config.xml)复制到特定于平台的文件夹中。和版本忽略那些文件。所以他们永远不会被遥控器推或拉(除非是第一次安装)

同样,我不知道这是否是一个好方法,我想听听您的意见

标签: gitcordovaionic-frameworkcordova-plugins

解决方案


首先,如果您将在 MACOS 而不是 Windows 中构建您的 android 应用程序,那不是很好:)。如果您在构建 android 时遇到 MAC 中的任何问题,那么我可以帮助您解决该问题。

理想情况下,package.json、package-lock.json 和 config.xml 不应在每次将其推送到 git 时都提交到 git。每当您添加插件或更新插件的软件包版本时,都应该更新它。

我们在团队中遵循相同的原则,因为我的团队成员拥有 windows、ubuntu 和 MAC OS 机器。


推荐阅读