controllare le risorse
-
18-09-2019 - |
Domanda
hey sto caricando spesso i miei progetti XCode iPhone per un repository svn di essere costruito su un'altra macchina.
Il mio problema è che quando aggiungo le risorse per il mio progetto a volte mi dimentico di aggiungere la risorsa come relative al progetto.
So che una risposta è quello di essere più attenti (non facile quando il vostro stanco!), Ma se ci fosse un modo per eseguire uno script per controllare i miei percorsi delle risorse sono relative quando costruire e mi avverto se non sono che sarebbe stato un grande risparmio di tempo per me.
Come potrei fare per fare questo?
Grazie
Chris
Soluzione
È possibile selezionare tutti i file del progetto e impostare il tipo di percorso per tutti loro in una sola volta. Anche se questo non è uno script che fa risparmiare un sacco di tempo nel fare le file singolarmente
Credo che l'approccio migliore per questo script potrebbe essere quella di guardare nel file .xcodeproj - i percorsi dei file sono elencati in là. Se il progetto è denominato MyProject è necessario aprire (o usando Mostra contenuto pacchetto in Finder o solo il solito cd nel Terminal) La directory MyProject.xcodeproj.
Qui troverete un file chiamato project.pbxproj - aprire questo in un editor che non rovinare la formattazione e dare un'occhiata in giro per il file. Se si cerca uno dei file nel progetto si dovrebbe essere in grado di vedere come Xcode memorizza i riferimenti ai file di progetto.
Cercare una sezione denominata / * Inizio sezione PBXFileReference * /. Qui sono elencati tutti i file, insieme a dove sono relative al progetto, per esempio:.
... path = Classes/MyClass.h; sourceTree = SOURCE_ROOT
Se è possibile analizzare questo file si dovrebbe essere in grado di acheive ciò che si vuole -. Ma ricordarsi di eseguire il backup del file, altrimenti si potrebbe danneggiare il vostro progetto
Altri suggerimenti
Come sarebbe se invece scrivere uno script che chiede al SCM semmai nel progetto non è impegnata? Per esempio, pensare a questo scenario
Project Root
Codex
Project.xcodeproj
…
Design
anImage.png
dove anImage.png
essere al di fuori del Codex
, dove il progetto Xcode siede (il suo percorso inizia con un ../
). Un forte parser .pbxproj
avrebbe dovuto sostenere tutte le varianti in cui Xcode riferimento ai file di sapere esattamente se ci sono file randagi.
OTOH, la SCM sa dove tutto è per tutto il tempo (lei ha citato up-ping a un server SVN), quindi perché non chiedere invece.
- Abbiamo una Rubino script che stampa un avviso in Xcode costruire Login se qualcosa nel progetto non si impegna.