2011-09-01 17 views
17

Qual è una buona struttura di directory per un singolo repository di origine che contiene sia versioni Android che iOS di un progetto di PhoneGap? Sto bene usando i link simbolici, dal momento che non mi aspetto uno sviluppo su PC. (Ma se c'è un modo pulito per farlo senza, sono tutto orecchie, dal momento che git e collegamenti simbolici su PC sono un incubo.) Ho provato questo:Struttura di directory per progetto di PhoneGap multipiattaforma

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 

Poi puntare Xcode ai ios/directory www ed eclipse nella directory android/www. Per i javascript specifici della piattaforma, i file html si riferiscono a xpjs/phonegap.js e xpjs/my-quirks.js e ottengono le versioni Android o ios di tali file.

Sembra che tutto dovrebbe funzionare, ma xcode4 non sembra gestire i collegamenti simbolici. Se apro uno dei file di origine nell'editor Xcode, si legge bene, ma quando provo a salvarla si dice qualcosa come

The document "index.html" could not be saved. It does not exist. 

e l'applicazione quando provo a farlo funzionare a mancare con

ERROR: Start page 'www/index.html' was not found. 

Sicuramente qualcuno lo ha capito.

+0

quale controllo sorgente stai usando? – pinkeerach

+0

git, che non ha problemi con i collegamenti simbolici finché non si controlla il repository su Windows. – Leopd

risposta

4

In realtà è abbastanza semplice con Git e Sottomoduli. Il wiki phonegap di cui sopra è davvero un po 'snello, quindi in realtà sono andato avanti e ho implementato una soluzione che configura il progetto xcode & eclipse.

consultare il link nel mio blog: Phonegap project structure using git submodules

Se non si desidera utilizzare i moduli di Git, c'è una soluzione Symlink pure che non si cura se si utilizza Git o SVN.

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

+1

@leopd grazie per aver corretto il link al mio post. –

+6

Il collegamento è stato interrotto di nuovo. – wtjones

4

c'è un writeup (sembra un primo passaggio) su phonegap wiki che spiega come utilizzare un sottomodulo git. per integrare tale voce, ho anche fatto un writeup sull'uso della proprietà svn: externals. il mio unico pensiero sui collegamenti simbolici è che è qualcosa che le persone devono configurare piuttosto che ottenerli intrinsecamente dal repository di controllo del codice sorgente. non è davvero un problema, ma è una logistica per l'installazione quando si cambia computer o si ottengono sviluppatori aggiuntivi su un progetto. Prenderò la via svn: esternal finché non trovo qualcosa di meglio.

+0

Affissione piuttosto sottile ma grazie per il puntatore. – Leopd

+0

sì, se avessi più esperienza con git, vorrei elaborare. mi piacerebbe sapere come funziona. sto provando il lato svn delle cose adesso. – pinkeerach

+1

Non sto contrassegnando la risposta come accettata perché preferirei davvero una soluzione configurando xcode ed eclipse. Git è abbastanza una sfida per molti che preferirei non introdurre un'altra complessità per questo progetto. – Leopd

Problemi correlati