单个源存储库的良好目录结构是什么,它同时包含Android和iOS版本的phonegap项目?我没关系使用sym-links,因为我不希望在PC上发生任何开发。 (但是,如果有一个干净的方式可以做到这一点,我会全力以赴,因为PC上的git和符号链接是一场噩梦。)我试过这个:
www/
index.html
js/ *.js
xpjs-ios/ *.js
xpjs-android/ *.js
css/ *.css
html/ *.html (all other files)
android/
(lots of java and config files)
android/assets/www/index.html -> www/index.html
js -> www/js
xpjs -> www/xpjs-android
html -> www/html
css -> www/css
ios/
(xcode config and such)
ios/www/index.html -> www/index.html
js -> www/js
xpjs -> www/xpjs-ios
html -> www/html
css -> www/css
然后我将xcode指向ios / www目录,并在android / www目录下进行eclipse。对于特定于平台的javascript,html文件引用xpjs/phonegap.js
和xpjs/my-quirks.js
并获取这些文件的android或ios版本。
这似乎应该可行,但xcode4似乎没有处理符号链接。如果我打开xcode编辑器中的一个源文件,它读起来很好,但是当我尝试保存它时,它会说像
The document "index.html" could not be saved. It does not exist.
和我尝试运行时的应用程序失败并显示
ERROR: Start page 'www/index.html' was not found.
当然有人想出来了。
答案 0 :(得分:4)
在phonegap wiki上有一个写法(看起来像第一遍),解释了如何使用git子模块。为了补充这个条目,我还写了一篇关于使用svn:externals属性的文章。我对符号链接的唯一想法是,人们必须设置它,而不是从源控制存储库中获取它们。这不是一个真正的问题,但是当您切换计算机或在项目上获得其他开发人员时,它是设置的后勤。我将采取svn:externals路线,直到我找到更好的东西。
答案 1 :(得分:4)
使用Git和Submodules实际上很容易。上面提到的phonegap wiki确实有点渺小,所以我实际上继续实施了一个配置xcode&的解决方案。日食项目。
请参阅我的博文中的链接:Phonegap project structure using git submodules
如果您不想使用Git子模块,还有一个Symlink解决方案,如果您使用Git或SVN,则无需关心。
http://www.tricedesigns.com/2012/02/16/linked-source-files-across-phonegap-projects-on-osx/