Sembra uno standard integrazione continua impostazione
Sembra che ti piacerebbe creare un ambiente di integrazione continua in modo che gli sviluppatori possano lavorare indipendentemente l'uno dall'altro, ma unire il loro lavoro su base regolare (ogni due ore) e avere il risultato finale spinto verso il dispositivo iOS che funge da standard di rilascio corrente.
Impostazione di un sistema di controllo della versione
Per prima cosa impostare un sistema di controllo della versione. Chiedi ai tuoi sviluppatori quali preferirebbero, ma i candidati caldi saranno Subversion, Mercurial o Git. Le ultime due offrono il controllo della versione distribuito in modo che i tuoi sviluppatori possano lavorare ovunque (anche quando sono offline dal server di controllo della versione principale). Il primo (SVN) richiede che un server di controllo delle versioni sia disponibile per i check-in, di solito quando si è in ufficio. Le versioni correnti di Xcode hanno il supporto nativo per Subversion, ma c'è anche il versioni client e Git Tower per git.
Non c'è carenza di blog per quanto riguarda l'impostazione di uno dei precedenti, quindi basta scegliere e iniziare. Personalmente, Mercurial è un gioco da ragazzi ma il tuo percorso può variare.
Configurazione di Hudson
Hudson è un server di integrazione di integrazione continuo molto semplice. (Jenkins è il diretto progetto di successore di Hudson e potresti voler applicare questo approccio usando invece Jenkins).
Imposta build Hudson per iOS e dagli un obiettivo di compilazione simile a questo
xcodebuild -project Myproj.xcodeproj -target MyProj -configuration Debug
Configura Hudson / Jenkins per costruire su ogni modifica al sistema di controllo della versione.
Il processo generale diventa quindi
- Lo sviluppatore A scrive del codice, lo verifica localmente e lo controlla in
- Lo Sviluppatore B scrive contemporaneamente del codice e lo controlla in
- Il controllo del codice sorgente unisce le modifiche alla versione più recente
- Hudson controlla l'ultima versione corrente e tenta una build
- Se la compilazione fallisce, tutti gli sviluppatori ricevono un'email con l'indicazione dell'errore
- Gli sviluppatori lavorano per risolvere il problema di integrazione
- Risciacquare e ripetere fino a quando l'applicazione può essere rilasciata
- Verifica che l'applicazione funzioni sui dispositivi iOS di destinazione, respingi come un bug se fallisce