2011-09-01 47 views
17

單個源存儲庫的一個好的目錄結構,可以同時存放Android和iOS版本的phonegap項目?我沒有使用sym-links,因爲我不希望PC上有任何發展。 (但是,如果有一個乾淨的方式來做到這一點沒有,我所有的耳朵,因爲Git和PC上的符號鏈接是一個噩夢。)我已經試過這樣:跨平臺phonegap項目的目錄結構

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 

然後我在IOS點的X​​code/www目錄和eclipse在android/www目錄下。對於平臺特定的JavaScript,html文件引用xpjs/phonegap.jsxpjs/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

您使用的是什麼源代碼控制? – pinkeerach

+0

git,只要你不檢查Windows上的回購,它就不會遇到符號鏈接問題。 – Leopd

回答

4

Git和Submodules其實很簡單。上面引用的phonegap wiki確實有點苗條,所以我實際上繼續實施了一個配置xcode & eclipse項目的解決方案。

參見我的博客文章鏈接:Phonegap project structure using git submodules

如果你不想使用Git的子模塊,有一個符號連接的解決方案,以及如果你使用git或SVN不關心。

http://www.tricedesigns.com/2012/02/16/linked-source-files-across-phonegap-projects-on-osx/

+1

@leopd感謝您修復鏈接到我的帖子。 –

+6

鏈接被再次破壞。 – wtjones

4

phonegap wiki上有一篇文章(看起來像第一遍),它解釋瞭如何使用git子模塊。爲了補充這個條目,我也對使用svn:externals屬性做了一個補充。我對符號鏈接的唯一想法是,這是人們必須設置的東西,而不是從源代碼控制庫內部獲取它們。這不是一個真正的問題,但是當您切換計算機或在項目中獲得更多的開發人員時,這對於設置來說是一個邏輯上的問題。我會採取svn:externals路線,直到我找到更好的東西。

+0

非常薄的寫法,但感謝指針。 – Leopd

+0

是的,如果我有更多的經驗瓦特/混帳,我會詳細說明。很想聽聽這是如何解決的。我現在證明了事情的一面。 – pinkeerach

+1

我沒有把答案標記爲接受,因爲我真的更喜歡通過配置xcode和eclipse來解決問題。 Git對許多人來說是足夠的挑戰,我寧願不爲這個項目引入另一個複雜性。 – Leopd