Как мне достичь ниже, используя SVN? - PullRequest
0 голосов
/ 14 апреля 2009

Итак, разработчик X и Y сделал извлечение из репозитория svn с ревизией no as 2. Dev Y вносит изменения и делает коммит. Dev X вносит изменения и делает коммит. Теперь я хочу добиться того, чтобы он не мог совершить сделку, если его репо не самый последний?

Как мне это сделать?

Как мне запретить пользователю совершать коммиты в репозиторий без обновления svn и тем самым перезаписывать предыдущие изменения разработчиков?

Ответы [ 3 ]

8 голосов
/ 14 апреля 2009

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

4 голосов
/ 14 апреля 2009

Вы не можете заставить SVN заставить программиста всегда делать обновления, но если есть конфликт, т.е. файлы, которые изменил программист X, были обновлены в хранилище, тогда SVN потребуется обновление для разрешения конфликтов.

Другими словами, если программист Y обновляет файл TEST.TXT с версии 2 до версии 3, и программист X, имеющий версию 2 TEST.TXT, и изменяет этот файл, когда он пытается зафиксировать версию 4, SVN принудительно выполнит Программист X обновлять первым.

Однако, если программист X и Y работает с разными файлами, SVN не будет принудительно обновлять это.

Это может быть возможно с помощью крючков на стороне клиента.

Какие конкретные проблемы вы пытаетесь решить здесь? Почему вы хотите это сделать?

2 голосов
/ 14 апреля 2009

Вот официальная глава документации Subversion о «принятии изменений»:

http://svnbook.red -bean.com / ночной / ан / svn.tour.cycle.html # svn.tour.cycle.commit

В последнем параграфе говорится, что вы должны выполнить svn update перед передачей файла с устаревшей информацией в локальной рабочей копии.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...