Подтвердить что ты не робот

Устранение отложенных конфликтов с SVN

Я новичок в командной строке SVN в командной среде. Я случайно отложил слияние версий. После выполнения:

svn status

Я получаю:

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

Однако я не знаю, как объединить эти изменения. В настоящее время я получаю сообщение об ошибке, когда XCode говорит, что проект не может быть проанализирован. Может ли кто-нибудь показать мне, как объединить эти изменения?

4b9b3361

Ответ 1

Эти файлы существуют, чтобы помочь вам запускать разностные или трехсторонние слияния. Основная версия файла также содержит конфликтующий код с маркерами, окружающими конфликты. Таким образом, еще один вариант - просто отредактировать основной файл, выполнить поиск этих маркеров. Разрешите конфликты и удалите маркеры.

Когда закончите, вы запустите команду, например:

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

Ответ 2

В продолжение принятого ответа эти четыре параметра доступны при разрешении:

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: чтобы выбрать версию файла, который вы последний раз проверили, прежде чем вносить изменения.

работа: выбирать и выбирать из ваших изменений и изменения, которые вы обновили с сервера, объединить конфликтный текст "вручную" (путем изучения и редактирования маркеров конфликта внутри файла)

Надеюсь, это поможет.