Требовать создание ветвей в папках
Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019
Если у вас много людей, взаимодействующих в репозитории, количество и имена ветвей могут быстро выйти из контроля.
Иерархические папки — эффективный способ упорядочить хаос.
Azure DevOps Services, TFS и Visual Studio обрабатывают /
как разделитель папок и по умолчанию автоматически сворачивают папки.
Таким образом, вам не нужно проходить через каждую ветвь, чтобы найти тот, который вы ищете.
Вы не должны полагаться на всех, чтобы все правильно сделали.
Azure Repos и TFS могут обеспечивать правильное использование папок ветвей.
Планирование
Определите структуру папок, которую вы хотите разрешить. Например, мы настроим наш репозиторий для применения следующих правил:
- В корневом каталоге репозитория может существовать только
main
. - Всем пользователям будет разрешено создавать ветви в
feature/
иusers/
папках. - Администраторы смогут создавать ветви в папке
release/
.
Примечание.
Дополнительные примеры и сведения о стратегиях именования ветвей см. в внедрении стратегии ветвления Git.
Подготовка
- Вам потребуется команда управления версиями Team Foundation (
tf.exe
). - Вам потребуется URL-адрес учетной записи или коллекции, имя проекта и имя репозитория. В этом примере мы будем использовать
https://fabrikam-fiber.visualstudio.com
,FabrikamProject
иFabrikamRepo
.
Примечание.
Команда tf.exe
по умолчанию идёт в комплекте с Visual Studio.
Доступ к нему можно получить с помощью командной строки разработчика .
Для получения дополнительных параметров скачайте Team Explorer.
Принудительное применение разрешений
Выполните следующие команды в командной строке разработчика в разделе Пуск>Visual Studio>. Каждой команде предшествует объяснение того, что она делает. Если у вас нет закэшированного личного маркера доступа (например, если вы вошли на веб-портал Azure DevOps Services), вам будет предложено войти в систему.
Сначала блокируйте разрешение Create Branch в корневом каталоге репозитория для участников проекта.
tf git permission /deny:CreateBranch /group:[FabrikamProject]\Contributors /collection:https://dev.azure.com/fabrikam-fiber/ /teamproject:FabrikamProject /repository:FabrikamRepo
Затем разрешите участникам создавать ветви в feature
и users
.
tf git permission /allow:CreateBranch /group:[FabrikamProject]\Contributors /collection:https://dev.azure.com/fabrikam-fiber/ /teamproject:FabrikamProject /repository:FabrikamRepo /branch:feature
tf git permission /allow:CreateBranch /group:[FabrikamProject]\Contributors /collection:https://dev.azure.com/fabrikam-fiber/ /teamproject:FabrikamProject /repository:FabrikamRepo /branch:users
Разрешить администраторам создавать ветви в release
.
tf git permission /allow:CreateBranch /group:"[FabrikamProject]\Project Administrators" /collection:https://dev.azure.com/fabrikam-fiber/ /teamproject:FabrikamProject /repository:FabrikamRepo /branch:release
Наконец, разрешите администраторам создать ветвь с именем main
(если она когда-либо случайно удаляется).
tf git permission /allow:CreateBranch /group:"[FabrikamProject]\Project Administrators" /collection:https://dev.azure.com/fabrikam-fiber/ /teamproject:FabrikamProject /repository:FabrikamRepo /branch:main
Примечание.
Дополнительные сведения, см. в tf git разрешения. Вы также можете получить доступ к справке по этим командам из командной строки, выполнив tf git /?
и tf git permission /?
.
Переименование старых ветвей
Откройте репозиторий в Интернете и выберите раздел Ветки.
Найдите ваш существующий филиал. Если вы этого не видите, возможно, вам понадобится открыть вкладку "Все".
Выберите контекстное меню (кнопка
...
) и выберите Создать ветвь.Введите новое имя ветви, например users/frank/readme-fix. Выберите Создать ветвь.
Выберите красный значок корзины рядом с названием старой ветки, чтобы удалить её.
Примечание.
Любые настраиваемые разрешения или политики ветви, которые вы настроили, не будут перенесены.