У меня есть репозиторий svn с файлами XML, и меня не устраивает функция автоматического слияния svn-update.
После svn update
или svn update --accept postpone
у меня есть такой поврежденный XML.
<?xml version="1.0" encoding="utf-8"?>
<VERSION>
<<<<<<< .mine
<MAJOR>200</MAJOR>
=======
<MAJOR>100</MAJOR>
>>>>>>> .r10
</VERSION>
SVN считает, что XML был текстовым файлом, и поместил здесь несколько маркеров для человеческого редактора.
Как отключить слияние в svn update
для XML (текстовых) файлов?
Я прочитал и попробовал все ответы в Могу ли я отключить автоматическое слияние в Subversion?, но это не работает для SVN v 1.8.
UPD
Я просмотрел ответ https://stackoverflow.com/a/7673033/3578861 и обнаружил, что это не так. для свн 1.8 - Subcommand 'update' doesn't accept option '--diff-cmd ARG'
Но теперь вместо этого был вариант diff3-cmd
.
Если я изменю решение на
svn update --accept postpone --diff3-cmd="d:\\f.bat"
и напишите d:\f.bat
скрипт с
@type %9
@exit 1
Сейчас работа. Но это слишком накладной и нестабильный хак. Этот скрипт принимает входные потоки от всех конфликтующих файлов и сохраняет один из них в результирующий файл - это очень глупо и затратно.
Есть ли более элегантное решение?