Перехватчик предварительной фиксации SVN для конфликтующих файлов

У меня есть файл с именем test.txt.
Когда возникает конфликт файлов. мы получаем 4 файла, например.

test.txt
test.txt.min
test.txt.r1
test.txt.r2

В test.txt мы получаем текст вроде

<<<<<<< .mine
>>>>>>> .r2

Итак, мой вопрос заключается в следующем:
есть ли способ запретить пользователю зафиксировать конфликтующий файл?
Я имею в виду,

  • Пользователь не может зафиксировать файл, содержащий текст <<<<<<< .mine >>>>>>> .r2

  • #P5# <блочная цитата> #P6#

person Vishu238    schedule 07.09.2015    source источник


Ответы (1)


Простой способ:

Эта проблема кажется легко решаемой с помощью программного обеспечения (например, скрипта-ловушки), однако настоящая проблема будет хуже (поверьте мне, я реализовал ее однажды для клиента!). Ваши люди начнут удалять маркеры конфликтов и переименовывать эти файлы, чтобы они не соответствовали вашему регулярному выражению в вашем скрипте ловушки, что приведет к затоплению вашего репозитория всеми видами конфликтующих файлов. Хуже того: никто не может реконструировать основные конфликты, поскольку маркеры конфликта исчезли!

Правильный способ:

Вы должны объяснить своим пользователям, как возникают эти конфликты. Если они происходят очень часто, обычно виновата другая (внешняя) проблема (плохой дизайн программного обеспечения, отсутствие командной коммуникации и т. д.). SVN запрещает зафиксировать конфликтующий файл. Вы должны показать, как разрешить этот конфликт. В стандартных случаях использования SVN конфликты не являются большой проблемой (кроме слияния)

person Peter Parker    schedule 08.09.2015