2012-09-23 45 views
6

我有兩個分支,我試圖在xCode 4.5中進行合併。解決兩個衝突的文件並按下「合併」按鈕後,合併屏幕消失,沒有錯誤出現,並且看起來成功。但是與我以前使用xCode 4.4的經驗不同,沒有任何事情是真正承諾的。如果我嘗試手動執行所有已更改文件的提交,它會提供一個錯誤,指出「致命:在合併期間無法執行部分提交」。沒有跡象表明如何在xCode內進行操作。xCode 4.5 git merge無法提交或給出錯誤

這是我得到的,如果我從命令行執行git狀態。這兩個「沒有提交提交」文件是我在xCode中解決衝突的文件。我知道我可以嘗試使用其他工具進行合併,但我喜歡xCode實用程序,如果它不再可靠地工作,我會感到很沮喪。其他人看到並解決了這個問題?

# 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 
# 

回答

8

我得到這個所有的時間,因爲有3人編碼的應用程序。它似乎涉及各種人員的文件添加和刪除的組合,但坦率地不確定。也許一個git guru會在這裏發出響聲,但這就是我如何解決問題的方法。

首先關閉Xcode中的項目並退出Xcode,然後在終端中導航到項目的根目錄。運行'git add'來查看你必須糾正的任何衝突文件(誰想出這個'添加')。

運行'git status'並確保一切都很好看。

現在爲魔法咒語:git commit -i -m "hoping and praying" . - 魔法選項是-i - 它提交總是成功(對我來說)。

現在您可以重新啓動Xcode並重新打開該項目。

+1

這很好。我從Xcode的提交只是默默地失敗,但命令行工作。你最後需要點。您還需要完全退出Xcode,而不是關閉項目,否則您仍然會在更改的文件旁邊看到「M」標記。 –

+0

@ski_squaw我更新了答案以反映您的意見 - 謝謝! –

+1

謝謝。我一直在處理這個奇怪的問題十年。最後它的工作。基督 – Katushai