Domanda

Faccio parte di una coppia di programmatori che lavorano insieme su applicazioni iPhone / iPod. Vorrei passare alla nuova versione di XCode (3.2) e Snow Leopard, ma è probabile che il mio partner non lo farà. Qualcuno può evidenziare eventuali problemi che potremmo avere la condivisione del codice? Ci sono incompatibilità tra vecchio e nuovo o dovremmo essere in grado di condividere felicemente codice / progetti?

Qualsiasi aiuto / avvertimento sarebbe apprezzato.

È stato utile?

Soluzione

Ho due macchine in questa situazione, una delle quali è SL / 3.2 e una Leopard / 3.1. Per l'unico progetto che condivido tra i due, sembra funzionare. Ma come sottolinea Mark, non vi è alcuna garanzia che funzionerà in tutti i casi.

Non l'ho provato, ma potrebbe funzionare se si utilizza il file di progetto in 3.2 e il proprio partner utilizza un file di progetto 3.1. Non archiviarlo, lavora solo con i file di origine dal controllo del codice sorgente, mantieni i file di progetto locali. L'ho fatto tra le versioni di Visual Studio, che è ciò che mi ha spinto all'idea, ma anche se suona bene nella mia testa non ho idea di come funzionerebbe in pratica.

Un'altra alternativa è mantenere due versioni di Xcode sul proprio computer (cercare SO o iphonedevsdk.com per la procedura). L'ho fatto attraverso le beta di OS 3.0, ma questo presuppone che Xcode 3.1 viva felicemente su una macchina SL. Probabilmente il più sicuro da provare, dato che il peggio sarebbe che 3.1 non verrà installato o eseguito su SL.

Altri suggerimenti

Se decidi di provare almeno il dualismo degli ambienti OS / Xcode, dovresti configurare le impostazioni del progetto del tuo progetto Xcode condiviso " Generale " scheda, Formato progetto in " 3.1 " perché se si aggiorna il progetto a 3.2 l'Xcode 3.1 potrebbe avere problemi ad aprirlo.

Non farlo. I file di progetto Xcode sono notoriamente fragili e non sono sempre compatibili tra le versioni. Quando apportano modifiche incompatibili note tra le versioni, viene visualizzato un avviso di apertura dei file nella nuova versione. Non esiste un avviso simile per 3.2 vs 3.1, ma ciò non garantisce che non avrai problemi.


Probabilmente dovrei chiarire che non intendo dire che non dovresti mai aggiornare, solo che tu e il tuo partner dovreste aggiornare contemporaneamente.

Il tuo partner dovrebbe aggiornare. Sono solo $ 29! Ci sono molte nuove funzionalità utili e il tempo è di circa un'ora in totale (un po 'più a lungo se includi il backup, ma comunque entrambi esegui comunque backup regolari, DESTRA?)

Facevo parte di un team misto con 3.2 e 3.1 per un po ', e ha funzionato, ma quello era uno o due aggiornamenti XCode fa.

Opzionalmente potresti sia mantenere diversi file di progetto e ciascuno aggiungere nuovi file come l'altro li ha aggiunti, per essere davvero al sicuro ...

Sono d'accordo che dovresti aggiornare, ma attenzione, potrebbe essere necessario modificare il codice.

Ho notato in particolare una differenza nel modo in cui NSAlert funziona. In 10.5 ho superato una variabile "finestra" come parametro e che ha creato un foglio aperto su quella particolare finestra. In 10.6 lo stesso identico codice ha generato una finestra di dialogo modale. Ho quindi cambiato " finestra " a " [finestra automatica] " e il foglio era tornato.

Ho anche un piccolo problema con Core Data, in cui genera l'avvertimento "Impossibile chiamare l'inizializzatore designato sulla classe XXX di NSManagedObject". anche se questo codice è stato completamente testato in 10.5.

Credo che ci fossero altri piccoli problemi, ma li ho risolti insieme a veri bug e non li ho annotati.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top