PhoneGap / Cordova 3.0项目的.gitignore – 我应该提交什么?
我只是试图创build一个新的phonegap 3.0项目…注:我是手机新手。 无论如何,我看到项目文件夹包含:
.cordova
-
merges
-
platforms
-
plugins
-
www
并试图phonegap local run android
我看到很多二进制/生成的platforms/android
文件。 这让我想知道,这个文件夹结构的哪些部分应该添加到我的git仓库中。 通常情况下,我认为提交二进制文件是非常糟糕的做法。 因此,我通常会添加诸如bin/
, obj/
, *.o
, *.pyc
等模式到.gitignore
以避免污染我的git存储库,只会造成合并冲突。
当然, www
应该被添加到git中,但是项目的其他部分呢。 源代码的产品延伸到什么程度,扩展到项目configuration?
你是做什么? 当然,我是新的,所以我几乎不明白什么是有道理的。
答案取决于你正在开发phongap应用程序的极限平台,以及是否遵循标准的目录结构。
如果你的项目目录结构是标准的,那么你可以从这个gitignore开始,并根据你的需要进行修改。
按照经验法则,您必须排除所有生成的文件,如bin/
和gen/
目录。 如果您正在开发Android版本的应用程序,则应排除构build文件,如*.apk
。
android
子目录中的所有生成的文件也应该被排除:
Android/bin/ Android/gen/ Android/assets/
扩展@Jake Moshenko答案:
我喜欢省略platforms
目录的想法。 事实上,我可以排除plugins
和platforms
目录。 .gitignore
一个好的起点:
platforms/ plugins/
问题在于,在实际使用之前,必须初始化完整的repo副本。 创build一个init脚本可能是有意义的,例如:
#!/bin/bash textReset=$(tput sgr0) textGreen=$(tput setaf 2) message_info () { echo "${textGreen}[my-app]${textReset} $1" } message_info "Creating necessary directories..." mkdir plugins mkdir platforms message_info "Adding platforms..." # If using cordova, change to: cordova platform add android phonegap build android phonegap build ios message_info "Adding plugins..." # If using cordova, change to: cordova plugin add phonegap local plugin add https://git-wip-us.apache.org/repos/asf/cordova-plugin-device.git
这种方法的一个警告是,它使定制平台特定的应用程序代码/configuration之外的phonegap / cordova(即屏幕方向支持)所支持的东西有点更具挑战性。
更新: Bash Gist
这个要点包含一个更完整的脚本,用于处理不提交plugins
和platforms
目录的项目。 它提供了一个机制,用于将图标和splashscreen图像从www复制到平台目录(用于iOS和Android),安装插件以及处理应添加到版本控制中的平台特定文件。
更新: Grunt Gist
这是另一个要点 ,它是上述bash脚本的一个Grunt端口。 (感谢@obie提示grunt)。
所以我只是通过反复试验就知道了这一点。 如果您使用phonegap本地或远程构build,则可以省略platforms
目录,因为它是在运行中生成的。 所有其他文件夹,包括隐藏文件夹.cordova
都是必需的。
我只是想在这里留下我对这个问题的经验和我们最终遵循的方法。
在我们的phonegap项目中,我们开始使用.gitignore文件提交文件夹/平台的所有文件。 我们这样想,当开发者克隆版本库的时候,唯一需要做的动作就是执行:
phonegap / cordova添加平台
但事实并非如此。 一旦平台被添加,我们试图编译,出现错误,应用程序没有安装在设备中。
看日志,我们得到了一些点击,这个错误是由于插件。 所以我们决定重新安装我们在项目中使用的所有插件,并确保应用程序正常运行。
所以我的build议是保存在存储库中的所有内容less文件夹平台和插件。 使用项目中使用的插件列表创build并上传到存储库文件README。
这样,当开发人员克隆仓库时,他/她必须:
1.-添加平台:phonegap / cordova添加平台“平台”
2.-添加插件:phonegap / cordova插件添加“插件”
希望这可以帮助!
问候。
很多东西都是旧的,并不适用于最新版本的Apache Cordova。 我正在使用Apache Cordova 5.1.1,这个.gitignore允许我仍然自定义图标等,同时阻止我们不需要为Android和IOS版本的所有东西。 是的,使用格式,所以不要删除它!
www/ .gradle/ build/ .tmp/ .temp/ coverage/ *.log node_modules/ bower_components/
虽然这是有点个人喜好,我去(这是一个唯一的Android项目)。 大部分删除,但保持自定义
ToonPlane/platforms/android/* !ToonPlane/platforms/android/AndroidManifest.xml ToonPlane/plugins/* !ToonPlane/plugins/android.json !ToonPlane/plugins/fetch.json
- Phonegap – 从url保存图像到设备照片库
- iPhone的UIWebview:如何强制数字键盘? 可能吗?
- 为Phonegap Build创build自定义AdMob插件(适用于iOS和Android)
- 如何在Chrome浏览器中启动deviceready事件(尝试debuggingphonegap项目)
- 如何在Safari中打开外部链接而不是应用程序的UIWebView?
- cordova平台添加Android不工作,同时上市Android目标
- 离子含量与离子集pipe棒重叠
- Phonegap和Sencha Touch之间的区别
- 通过Cordova config.xml添加条目到iOS .plist文件