Блокировка ветки SubVersion за несколько дней до выпуска - PullRequest
8 голосов
/ 29 июля 2010

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

Ранее мы использовали ClearCase, в котором это было относительно легко сделать.

Поскольку команда svn: lock работает только для отдельных файлов, мы не уверены, сможем ли мы эмулировать это поведение в SubVersion.

Что ты делаешь?

Ответы [ 4 ]

13 голосов
/ 30 июля 2010

Думать вбок - почему бы просто не создать ветку в точке, в которой вы хотите ее «заблокировать», и только проверить этот номер ревизии в процессе сборки / выпуска.

Затем разработчики все еще могут зарегистрироваться в стволе (или в любой другой ветви, над которой они работают), и если руководитель группы утверждает изменения для выпуска, они могут быть объединены в ветку.Конечно, это не «блокирует» ветку релиза, но, по крайней мере, вы можете легко отслеживать / отменять изменения, если это необходимо, и это не мешает людям работать.Источник для разработчиков по-прежнему будет указывать на ветку / ствол, над которыми они работали, а не на новую ветку релиза.

Создание веток очень дешево и легко в SVN (я полагаю).

8 голосов
/ 30 июля 2010

Вы можете взглянуть на svn-клиенты с графическим интерфейсом, которые обычно имеют более богатый интерфейс / функциональность, чем в командной строке.Например, я использую TortoiseSVN с параметрами Получить блокировку / разблокировку блокировки , применимыми для рекурсивной блокировки всех файлов в выбранной папке.Кстати, он также имеет удобную опцию создания тега / ветви и переключения на него одним действием.

3 голосов
/ 30 июля 2010

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

0 голосов
/ 29 сентября 2014

Что мы делаем, это перемещаем ветвь к тегу и имеем доступ только к тегу только для чтения.

...