2012-09-23 8 views
6

Ho due rami che sto cercando di unire in xCode 4.5. Dopo aver risolto i due file in conflitto e premuto il pulsante "Unisci", la schermata di unione scompare, non si verificano errori e sembra che abbia esito positivo. Ma a differenza della mia precedente esperienza con xCode 4.4, nulla viene effettivamente commesso. Se provo a eseguire manualmente un commit di tutti i file modificati, viene visualizzato un errore che dice "fatale: impossibile eseguire un commit parziale durante l'unione". Non vi è alcuna indicazione su come procedere all'interno di xCode.xCode 4.5 git merge non riesce a commettere o dare errori

Ecco cosa ottengo se faccio lo stato git dalla riga di comando. I due file "non organizzati per il commit" sono quelli con conflitti risolti in xCode. So che posso provare l'unione usando uno strumento diverso, ma mi piace l'utilità xCode e sarò un po 'stanco se non funziona più in modo affidabile. Qualcun altro ha visto e risolto questo problema?

# On branch ios6 
# Changes to be committed: 
# 
# modified: Flurry/libFlurry.a 
# modified: Network Commuting/Constants.h 
# modified: Network Commuting/LegMapViewController.m 
# modified: Network Commuting/Logging.h 
# modified: Network Commuting/Nimbler Caltrain-Info.plist 
# modified: Network Commuting/Plan.m 
# modified: Network Commuting/PlanStore.m 
# modified: Network Commuting/RouteDetailsViewController.h 
# modified: Network Commuting/RouteDetailsViewController.m 
# modified: Network Commuting/RouteOptionsViewController.m 
# modified: Network Commuting/SettingInfoViewController.m 
# modified: Network Commuting/TEXTConstant.h 
# renamed: Network Commuting/TestFlightSDK1/TestFlight.h -> Network Commuting/TestFlightSDK1-1/TestFlight.h 
# new file: Network Commuting/TestFlightSDK1-1/libTestFlight.a 
# deleted: Network Commuting/TestFlightSDK1/README.txt 
# deleted: Network Commuting/TestFlightSDK1/libTestFlight.a 
# deleted: Network Commuting/TestFlightSDK1/release_notes.txt 
# modified: Network Commuting/ToFromViewController.h 
# modified: Network Commuting/ToFromViewController.m 
# modified: Network Commuting/TransitCalendar.m 
# modified: Network Commuting/nc_AppDelegate.h 
# modified: Network Commuting/nc_AppDelegate.m 
# modified: Network CommutingTests/Network_CommutingTests.h 
# modified: Network CommutingTests/Network_CommutingTests.m 
# modified: Nimbler Caltrain.xcodeproj/project.pbxproj 
# modified: Nimbler Caltrain.xcodeproj/xcuserdata/apprikamac1.xcuserdatad/xcschemes/Nimbler CaltrainTests.xcscheme 
# 
# Unmerged paths: 
# (use "git add/rm <file>..." as appropriate to mark resolution) 
# 
# deleted by us:  Network Commuting/DateTimeViewController.xib 
# 
# Changes not staged for commit: 
# (use "git add <file>..." to update what will be committed) 
# (use "git checkout -- <file>..." to discard changes in working directory) 
# 
# modified: Network Commuting/ToFromViewController.m 
# modified: Nimbler Caltrain.xcodeproj/project.pbxproj 
# 

risposta

8

Mi capita sempre, poiché ci sono 3 persone che codificano l'app. Sembra correlato a un mix di aggiunte e cancellazioni di file da parte di varie persone ma francamente non è sicuro. Forse un guru guru ci suonerà qui, ma è così che aggiusto le cose.

Prima chiudere il progetto in Xcode e uscire da Xcode e in Terminal navigare nella directory principale del progetto. Esegui 'git add' per ogni file in conflitto che dovevi correggere (a chi è venuto in mente 'aggiungi' per questo ???).

Eseguire 'stato git' e assicurare tutto sembra bene.

Ora per l'incantesimo magico: git commit -i -m "hoping and praying" . - l'opzione magica è -i - con esso il commit sempre riesce (per me).

Ora è possibile riavviare Xcode e riaprire il progetto.

+1

Questo ha funzionato alla grande. Il mio commit da Xcode stava fallendo silenziosamente, ma la linea di comando funzionava. Hai bisogno del punto alla fine. Devi anche chiudere Xcode completamente e non solo chiudere il progetto o vedrai ancora i marcatori "M" accanto ai file modificati. –

+0

@ski_squaw Ho aggiornato la risposta per riflettere i vostri commenti - grazie! –

+1

GRAZIE. ho avuto a che fare con questo strano problema per circa un decennio. finalmente funziona. christ – Katushai