2011-11-06 22 views
71

in un progetto XCode, ho ricevuto xcodeproject/project.pbxproj file modificato, ma informazioni inutili per me, per la compilazione.Devo git ignorare xcodeproject/project.pbxproj file?

Devo git ignorare questo file e il file xcodeproject/projectxworkspace/username.xcuserdata/UserInterfaceState.xcuserstate?

+0

. I file xcuserstate possono essere ignorati, non solo il file pbxproj. –

+0

No, ecco la risposta: http://stackoverflow.com/questions/49478/git-ignore-file-for-xcode-projects – jeswang

risposta

94

Questo file contiene l'elenco di tutti i file nel progetto, le impostazioni degli obiettivi e quali file appartengono a quali destinazioni. È probabilmente il file più complesso nel pacchetto di progetti. Si non si dovrebbe ignorare questo file. Ci sono alcuni punti per questo:

  1. Si potrebbe non voler lavorare su questo progetto da solo o;
  2. Si sta pianificando di lavorare su progetti di macchine diverse;
  3. Avrai voglia di condividere la tua base di codice con gli altri;
6

Questo è l'unico file che si desidera nei repository dal bundle xcodeproj. Quel file contiene tutte le informazioni per i file di destinazione e le impostazioni di creazione.

+0

Questa risposta può una volta essere vero, ma è attualmente sbagliato. Non è né vero che contiene "tutte le informazioni" (diverse cose, ad esempio gli eseguibili personalizzati sono memorizzati in un file diverso, ad esempio, gli spazi di lavoro sono memorizzati in un file diverso, ecc.), Né è vero che è il "solo file" che voglio conservare. c.f. la domanda su cosa includere in .gitignore - http://stackoverflow.com/questions/49478/git-ignore-file-for-xcode-projects – Adam

+0

che sembra ben pensato ... seguitelo in futuro. –

0

Ho scoperto che ho anche bisogno di conservare i file xcworkspace. In caso contrario, il progetto con un sottoprogetto si è interrotto.

2

Sfortunatamente, se le impostazioni di generazione includono la firma del codice, è necessario immettere nuovamente l'entità di firma del codice dopo ogni "estrazione GIT" se un altro membro del team lo ha modificato. Mi sembra che questa informazione dovrebbe essere nelle impostazioni utente, non nel file pbxproj globale.

+1

È possibile impostare la firma del codice in modo che ognuno di voi nel progetto abbia un profilo di firma del codice diverso che corrisponda alla stessa impostazione (condivisa) nel progetto, ad es. utilizzando un nome con caratteri jolly e quindi ognuno di voi lo abbina separatamente o ad es. sono tutti sullo stesso team di iTunes e condividono i profili. – Adam

2

Se si esclude project.pbxproj I build di Jenkins falliranno. Quindi questo è importante se usi Jenkins.

Problemi correlati