Защитите ветку git от удаления авторами, использующими TFS 2015 (особенно master) - PullRequest
0 голосов
/ 12 июня 2018

Использование TFS 2015

Вопрос 1: Есть ли способ запретить Участникам удалять определенную ветку (например, master )?

Мои тесты показывают, что невозможно запретить пользователям, имеющим разрешение Contribute , удалить основную ветвь.

В добавление к этому, похоже, нет способа восстановить удаленную ветвь, поскольку это операция «уничтожить».

Пожалуйста, исправьте меня, если я ошибаюсь.

Вопрос 2: Правда ли, что невозможно защитить ветки от удаления пользователями с помощью Внести вклад разрешение?

Вопрос 3: Правда ли, что в TFS 2015 нет способа восстановить удаленную ветку в удаленном хранилище, то есть в TFS 2015?не выполняет логическое удаление, а скорее уничтожить?

Ответы [ 2 ]

0 голосов
/ 13 июня 2018
  1. Вам необходимо установить Переписать и уничтожить историю (принудительное нажатие) разрешение Запретить на уровне ветви для защиты ветви:

enter image description here

Вы можете сделать git reflog и найти SHA1 для коммита на кончике вашей удаленной ветви, затем просто git checkout [sha].И как только вы получите этот коммит, вы можете просто git checkout -b [branchname] воссоздать ветку оттуда.

Полезные ссылки:

0 голосов
/ 13 июня 2018

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

Ветвь - это просто указатель на коммит .В коммите есть дети и родители.История поддерживается этими отношениями между родительскими и дочерними коммитами, а не ветвью.

Если ветвь удалена, вы можете просто извлечь коммит, на который указала ветка, и воссоздать ветвь.

На самом деле, это не должно быть серьезной проблемой.

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