2012-03-08 123 views
23

我對團隊環境中的SVN命令行相當陌生。我不小心推遲了合併修訂。後做:解決與SVN的延期衝突

svn status 

我得到:

?  Trivial/Trivial.xcodeproj/project.pbxproj.mine 
?  Trivial/Trivial.xcodeproj/project.pbxproj.r280 
?  Trivial/Trivial.xcodeproj/project.pbxproj.r276 

不過,我不知道如何將這些更改合併。目前,我收到XCode錯誤,說該項目無法解析。有人能告訴我如何合併這些修訂版嗎?

回答

28

這些文件的存在可以幫助您運行差異或3路合併。該文件的主版本將包含衝突代碼以及圍繞衝突的標記。所以另一種選擇是編輯主文件,搜索這些標記。解決衝突並刪除標記。

完成後,你執行一個命令:

svn resolve --accept=working Trivial/Trivial.xcodeproj/project.pbxproj 

這將刪除這些其他文件。您還將看到該命令包含通過簡單接受來自其中一個文件的所有更改來解決衝突的選項。

參見:http://svnbook.red-bean.com/en/1.7/svn.tour.cycle.html#svn.tour.cycle.resolve

+0

編輯完成後,也可以使用'svn resolve'並按(r)標記解析。 – herman 2014-10-20 16:25:11

11

在接受答案的延續,這是四種可供選擇,同時解決:

svn resolve --accept=mine-full Trivial/Trivial.xcodeproj/project.pbxproj 
svn resolve --accept=theirs-full Trivial/Trivial.xcodeproj/project.pbxproj 
svn resolve --accept=base Trivial/Trivial.xcodeproj/project.pbxproj 
svn resolve --accept=working Trivial/Trivial.xcodeproj/project.pbxproj 

基地:選擇你最後做之前簽出文件的版本您的編輯

工作:從您的更改中進行選擇並更改您的更新從服務器獲取的更改,「手動」合併衝突文本(通過檢查和編輯f中的衝突標記ile)

我希望這有助於進一步。