解决与SVN的推迟冲突

时间:2012-03-08 15:51:08

标签: svn visualsvn-server

我在团队环境中对SVN命令行很新。我不小心推迟了合并修订。做完之后:

svn status

我明白了:

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

但是,我不知道如何合并这些更改。目前我收到一个错误,XCode说项目无法解析。有人可以告诉我如何合并这些修订版本吗?

2 个答案:

答案 0 :(得分:29)

这些文件可以帮助您运行差异或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

答案 1 :(得分: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

base:在进行编辑之前选择上次检出的文件版本

工作:从您的更改中挑选和更新您的更新从服务器获取的更改,“手动”合并冲突的文本(通过检查和编辑文件中的冲突标记)

我希望这会有所帮助。