Настройка параметров и политик репозитория Git

Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019

Существует несколько способов настройки репозиториев Azure Repos Git с помощью параметров и политик и параметров репозитория. В этой статье рассматриваются параметры и политики уровня репозитория.

  • Параметры и политики репозитория настраивают глобальные параметры для всех репозиториев Git для проекта или организации или для отдельных репозиториев.

    В этой статье рассматриваются параметры и политики репозитория на стороне сервера. Дополнительные сведения о параметрах Git на стороне клиента см. в разделе "Параметры и параметры Git" в Visual Studio.

  • Политики ветви охватывают элементы управления, относящиеся к ветви.

    Политики ветвей включают такие варианты, как запрос на вытягивание, успешная сборка или проверка кода, прежде чем изменения могут объединиться в ветвь. Дополнительные сведения см. в разделе "Политики и параметры ветви".

  • Разрешения на безопасность репозитория и ветви управляют назначениями пользователей.

    Эти разрешения определяют, кто может читать, записывать, вносить вклад в запросы на вытягивание и выполнять другие конкретные действия. Дополнительные сведения см. в разделе "Настройка разрешений для репозитория".

Сводка по всем параметрам репозитория и ветви и политикам

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

Примечание.

Вы можете задать несколько параметров и политик ветви с помощью Azure CLI с помощью политики az repos.

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

Все параметры репозиториев

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

Параметр

По умолчанию

Description


Выключено

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

Включено

Разрешить пользователям управлять разрешениями для созданных ветвей во всех новых репозиториях.

Параметры репозитория

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

Параметр

По умолчанию

Description


Включено

Разрешить пользователям создавать вилки из репозитория.

Включено

Автоматически создавайте ссылки для рабочих элементов, упомянутых в примечании фиксации.

Включено

Разрешить упоминаниям в примечаниях фиксации для закрытия рабочих элементов. Требуется обновление или более поздняя версия Azure DevOps Server 2020.1.

Включено

Помните настройки пользователя для завершения рабочих элементов с запросами на вытягивание.

Включено

Разрешить пользователям управлять разрешениями для созданных ветвей

Включено

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

Включено

Отключите доступ к репозиторию, включая сборки и запросы на вытягивание, но сохраняйте обнаружение репозитория предупреждением.

Включено

Укажите до пяти ветвей для участия в поиске кода, который по умолчанию применяется только к ветвь по умолчанию. Требуется установить и включить расширение поиска кода.

Политики или параметры репозитория

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

Политика или параметр

По умолчанию

Description


Выключено

Блокировать отправки с помощью автор фиксации электронной почты, которая не соответствует указанным шаблонам. Для этого параметра требуется Azure DevOps Server 2020.1 или более поздней версии.

Выключено

Блокировать отправку путем ввода путей к файлам, которые соответствуют указанным шаблонам. Для этого параметра требуется Azure DevOps Server 2020.1 или более поздней версии.

Выключено

Избегайте конфликтов конфиденциальности регистра, блокируя отправки, которые изменяют регистр имени файлов, папок, ветвей и тегов.

Выключено

Блокирует отправки, которые вводят файлы, папки или ветви, содержащие зарезервированные имена платформы или несовместимые символы.

Выключено

Блокирует отправки, которые вводят пути, превышающие указанную длину.

Выключено

Блокирует отправки, содержащие новые или обновленные файлы, превышающие выбранное ограничение.

Политики ветвления

В следующей таблице перечислены политики, которые можно определить для настройки ветви. Дополнительные сведения о настройке этих параметров см. в статье "Улучшение качества кода с помощью политик ветви". При установке любой политики в ветви следующие политики автоматически применяются:

  • Запросы на вытягивание требуются для обновления ветви.
  • Не удается удалить ветвь.

Примечание.

Политики ветви применяются к запросам на вытягивание на основе целевой ветви запроса на вытягивание. Политики ветви не должны быть установлены во временных ветвях, которые будут удалены после запроса на вытягивание. Добавление политик ветви во временные ветви приведет к сбою автоматического удаления ветви.

Политика

По умолчанию

Description


Выключено

Требовать утверждения указанного количества рецензентов для запросов на вытягивание.

Выключено

Поощрение прослеживаемости путем проверки связанных рабочих элементов в запросах на вытягивание.

Выключено

Убедитесь, что разрешены все комментарии по запросам на вытягивание.

Выключено

Журнал ветви управления путем ограничения доступных типов слияния при завершении запросов на вытягивание.

Выключено

Добавьте, включите или отключите одну или несколько политик для проверки кода путем предварительного объединения и создания изменений запроса на вытягивание.

Выключено

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

Выключено

Добавьте, включите или отключите одну или несколько политик, чтобы назначить рецензентов кода автоматически включать, когда запросы на вытягивание изменяют определенные области кода.

Необходимые компоненты

  • Чтобы настроить политики, необходимо быть членом группы безопасности администраторов проектов или иметь разрешения на изменение на уровне репозитория. Дополнительные сведения см. в разделе "Настройка разрешений репозитория Git".
  • Чтобы настроить политики, необходимо быть членом группы безопасности администраторов проектов или иметь разрешения на изменение на уровне репозитория. Дополнительные сведения см. в разделе "Настройка разрешений репозитория Git".

Просмотр и изменение параметров и политик

Параметры для всех репозиториев в организации или проекте можно настроить или для отдельных репозиториев. Политики можно настроить для всех репозиториев, отдельных репозиториев или для указанных ветвей в репозиториях. Сведения о настройке политик ветви см. в разделе "Политики ветви".

Примечание.

Рекомендуется настроить параметры репозитория на уровне проекта или для отдельных репозиториев, но не для обоих. При настройке параметров на нескольких уровнях система учитывает самый строгий параметр. Настройка параметров на одном уровне снижает путаницу и проблемы с производительностью Git.

Чтобы настроить параметры репозитория и политики на веб-портале, откройте репозитории параметров>проекта из веб-браузера.

  1. Чтобы просмотреть или изменить параметры или политики для всех репозиториев Git, откройте страницу "Все репозитории " и выберите "Параметры " или "Политики".

    Снимок экрана: параметры репозитория для всех репозиториев

    Чтобы настроить параметры и политики для определенного репозитория, перейдите на вкладку "Репозитории ", выберите репозиторий и перейдите на вкладку "Параметры " или "Политики ".

    Снимок экрана: параметры репозитория для репозитория Fabrikam.

  2. На следующем снимках экрана показана вкладка "Параметры ". Эти параметры можно определить для всех репозиториев Git или для отдельного репозитория.

    Снимок экрана: выбрана вкладка

  3. На следующем снимка экрана показана вкладка "Политики". Эти политики можно определить для всех репозиториев Git или для отдельного репозитория.

    Снимок экрана: выбрана вкладка репозитория

  1. В веб-браузере откройте проект и выберите параметры проекта, репозитории и выберите свой репозиторий.

    Снимок экрана:

  2. Чтобы просмотреть и настроить параметры репозитория, выберите "Параметры " или "Политики".

    На следующем снимку экрана показаны параметры для всех репозиториев:

    Снимок экрана: параметры для всех репозиториев.

    На следующем снимку экрана показаны параметры репозиториев Fabrikam:

    Снимок экрана: параметры репозитория Fabrikam.

Имя ветви по умолчанию

Можно задать имя ветви репозитория по умолчанию на уровне организации или проекта. Параметр уровня организации вступает в силу для всех новых репозиториев во всех проектах организации. Параметр уровня проекта влияет на все новые репозитории в проекте и заменяет любой набор имен на уровне организации.

Вы можете:

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

Если вы не включите функцию имени ветвь по умолчанию, репозитории инициализируются с именем mainAzure Repos ветвь по умолчанию.

Чтобы задать имя ветвь по умолчанию на уровне организации:

  1. На странице организации Azure DevOps выберите параметры организации слева и выберите репозитории в области навигации слева.
  2. На странице "Все репозитории" задайте имя ветви по умолчанию для новых репозиториев включено, а затем введите имя ветвь по умолчанию.

Снимок экрана: параметр уровня организации для имени ветви по умолчанию для новых репозиториев.

Чтобы задать имя ветвь по умолчанию на уровне проекта:

  1. На странице проекта Azure DevOps выберите параметры проекта слева и выберите репозитории в области навигации слева.
  2. На вкладке "Параметры" на странице "Все репозитории" задайте имя ветви по умолчанию для новых репозиториев включено, а затем введите имя ветвь по умолчанию.

Снимок экрана: параметр уровня проекта для имени ветви по умолчанию для новых репозиториев.

Примечание.

Для имени ветви по умолчанию для новых репозиториев требуется Azure DevOps Server 2020.1 или более поздняя версия.

Управление разрешениями ветви

Вы можете управлять разрешениями для ветвей репозитория, установив параметр управления разрешениями для всех репозиториев Git или отдельных репозиториев. Если разрешить пользователям управлять разрешениями для созданных ветвей на уровне "Все репозитории ", все новые репозитории проектов настроены, чтобы пользователи могли управлять разрешениями для созданных ветвей.

Чтобы управлять этим параметром, выполните следующие действия.

  1. На странице проекта Azure DevOps выберите параметры проекта слева и выберите репозитории в области навигации слева.
  2. На вкладке "Параметры" на странице "Все репозитории" задайте пользователям возможность управлять разрешениями для созданных ветвей значение "Вкл." или "Выкл.".

Снимок экрана, на котором показано, как разрешить пользователям управлять разрешениями для созданных ветвей.

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

  1. Выберите репозитории> параметров проекта и выберите репозиторий.
  2. На вкладке <"Параметры" на странице "Имя> репозитория" задайте для управления разрешениями значение "Вкл." или "Выкл.".

Снимок экрана: параметр репозитория управления разрешениями.

Изображения Gravatar

Этот параметр включает или отключает использование образов Gravatar для пользователей за пределами предприятия.

Образы Gravatar — это параметр уровня организации.

  1. На странице организации Azure DevOps выберите параметры организации слева и выберите репозитории в области навигации слева.
  2. На странице "Все репозитории" задайте для изображений Gravatar значение On или Off.

Снимок экрана: параметр уровня организации для образов Gravatar.

Образы Gravatar — это параметр уровня проекта для всех репозиториев.

  1. На странице проекта Azure DevOps выберите параметры проекта слева и выберите репозитории в области навигации слева.
  2. На вкладке "Параметры" на странице "Все репозитории" задайте для изображений Gravatar значение On или Off.

Образы Gravatar — это параметр уровня проекта для всех репозиториев.

  1. На странице проекта Azure DevOps выберите параметры проекта слева и выберите репозитории в области навигации слева.
  2. На вкладке "Параметры" на странице "Все репозитории" задайте для изображений Gravatar значение On или Off.

Включение вилок

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

  1. В разделе "Параметры проекта" выберите репозитории в области навигации слева.
  2. На вкладке репозиториев на странице "Все репозитории" выберите репозиторий.
  3. На вкладке <"Параметры" на странице имени> репозитория установите для вилки значение "Вкл." или "Выкл.".

Снимок экрана: параметр репозитория Forks.

Параметры связывания рабочих элементов

Эти параметры репозитория управляют связыванием рабочих элементов.

  1. Выберите репозитории> параметров проекта и выберите репозиторий.
  2. На вкладке <"Параметры" страницы имени> репозитория включите или выключите параметры.

Снимок экрана: параметры репозитория связывания рабочих элементов.

Фиксация ссылок

При включении сообщения фиксации, содержащие # допустимый идентификатор рабочего элемента, автоматически связывают фиксацию с этим рабочим элементом. Отключите этот параметр, если репозиторий ранее использовал другую учетную запись или службу. Эти репозитории могут содержать сообщения фиксации с # упоминаниями, которые не соответствуют идентификаторам рабочих элементов в текущей учетной записи.

Разрешение рабочих элементов фиксации

Включите этот параметр для автоматического завершения рабочих элементов при завершении связанных запросов на вытягивание. Этот параметр также позволяет указывать другие состояния перехода рабочих элементов в сообщениях фиксации запроса на вытягивание. Дополнительные сведения см. в разделе "Автоматическое завершение работы" с запросами на вытягивание.

Разрешение рабочих элементов фиксации

Включите этот параметр для автоматического завершения этих рабочих элементов при успешном завершении pr. Дополнительные сведения см. в разделе "Автоматическое завершение работы" с запросами на вытягивание.

Параметры перехода рабочих элементов

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

Параметр строгого режима голосования

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

  1. Выберите репозитории> параметров проекта и выберите репозиторий.
  2. На вкладке <"Параметры" на странице имени> репозитория установите для параметра "Строгий режим голосования" значение "Вкл. или выкл.".

Снимок экрана: параметр репозитория

Отключение параметра репозитория

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

  1. Выберите репозитории> параметров проекта и выберите репозиторий.
  2. На вкладке <"Параметры" на странице "Имя> репозитория" в разделе "Отключить репозиторий" установите значение "Отключить репозиторий" значение "Включить" или "Отключить".

Снимок экрана: параметр

Параметр ветвей, доступных для поиска

По умолчанию поиск кода в файлах применяется только к ветвь по умолчанию. Для поиска можно добавить до пяти дополнительных ветвей.

Внимание

Чтобы выполнить поиск кода в репозиториях, необходимо установить расширение поиска кода Marketplace. Если вы не видите ветвей поиска на вкладке "Параметры репозитория", убедитесь, что у вас установлено расширение.

Чтобы добавить ветви для поиска кода:

  1. Выберите репозитории> параметров проекта и выберите репозиторий.
  2. На вкладке <"Параметры" страницы имени> репозитория выберите ветвях+, доступных для поиска.
  3. Выберите ветвь, включаемую в поиск, и нажмите кнопку "Добавить ветвь".

Снимок экрана: параметр репозитория

Политики межрегиоресной ветви

Политики можно задать для определенного имени ветви или на ветвь по умолчанию во всех репозиториях проекта. Например, для всех репозиториев проектов может потребоваться два минимальных рецензента для всех запросов на вытягивание в каждой main ветви.

Чтобы задать политики для защиты определенных или ветвь по умолчанию имен в проекте:

  1. В разделе "Параметры проекта" выберите репозитории в области навигации слева.

  2. На странице "Все репозитории" выберите вкладку "Политики".

  3. В нижней части страницы выберите политики ветвей плюса.+

  4. На экране "Добавить ветвь" выберите "Защитить ветвь по умолчанию каждого репозитория" или "Защитить текущие и будущие ветви", соответствующие указанному шаблону.

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

  5. Нажмите кнопку создания.

    Снимок экрана, на котором показано включение политик ветвей между репозиторием.

  6. На странице имен> филиала политики между репозиториями задайте нужные политики <для защищенная ветвь. Дополнительные сведения о политиках ветви см. в разделе "Политики ветви".

    Снимок экрана: параметры политики ветвления между репозиториями.

Политика проверки электронной почты автора фиксации

Эта политика блокирует фиксацию в репозитории автор фиксации, адреса электронной почты которых не соответствуют шаблону.

  1. Выберите репозитории> параметров проекта и выберите репозиторий, если вы хотите настроить только этот репозиторий.

  2. На вкладке "Политики" на странице "Все репозитории" или< "Имя> репозитория" в разделе "Политики репозитория" установите для проверки электронной почты автора фиксации значение "Включено" или "Выкл.

  3. Если включить политику, укажите соответствующий адрес электронной почты или адреса.

    Можно указать точные адреса электронной почты или использовать подстановочные знаки. Используйте ; в качестве разделителя для нескольких шаблонов электронной почты. Шаблоны электронной почты, префиксированные с ! помощью, исключаются. Порядок важен.

Снимок экрана: параметр политики проверки электронной почты для автора фиксации.

Политика проверки пути к файлу

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

  1. Выберите репозитории> параметров проекта и выберите репозиторий, если вы хотите настроить только этот репозиторий.

  2. На вкладке "Политики" на странице "Все репозитории" или <"Имя> репозитория" в разделе "Политики репозитория" установите для проверки пути к файлу значение "Вкл." или "Выкл.".

  3. Если включить политику, укажите путь или пути для блокировки.

    Можно указать точные пути и подстановочные знаки. Точные пути начинаются с /. Можно также указать несколько путей с помощью ; разделителя. Пути, префиксированные с ! помощью, исключаются. Порядок важен.

Снимок экрана: параметр политики проверки пути к файлу.

Политика применения случаев

Git учитывает регистр, то есть файл с именем Foo.txt отличается от файла с именем foo.txt. Однако windows и macOS по умолчанию не учитывает регистры файловых систем, что означает, что Foo.txt и foo.txt совпадают с именем. Это несоответствие может привести к проблемам, если кто-то в нечувствительной системе отправляет файлы, папки, ветви или теги, которые отличаются только по буквам. Дополнительные сведения см. в статье о кроссплатформенной совместимости Git.

Если большинство участников находятся в Windows или macOS, рекомендуется включить политику принудительного применения случаев . Принудительное применение регистра переключает сервер с режима учета регистра по умолчанию, где File.txt и file.txt отличаются, в режиме windows и macOS, где File.txt и file.txt считаются одним и тем же файлом. Этот параметр распространяется на файлы, папки, ветви и теги.

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

Этот параметр не исправит репозиторий, который уже содержит объекты, которые отличаются только по регистру. Прежде чем включить политику, рекомендуется устранить такие проблемы. Переименуйте файлы и папки или повторно создайте ветви и теги , чтобы использовать не конфликтующие имена.

Чтобы задать политику принудительного применения регистра, выполните следующие действия.

  1. Выберите репозитории> параметров проекта и выберите репозиторий, если вы хотите настроить только этот репозиторий.
  2. На вкладке "Политики" на странице "Все репозитории" или <"Имя> репозитория" в разделе "Политики репозитория" установите значение "Вкл." или "Выкл.

Снимок экрана: параметр политики применения регистра.

Политика зарезервированных имен

Не все имена файлов разрешены в трех основных файловых системах ОС: Windows, macOS и Linux. Фиксации в общем репозитории могут содержать имена файлов или папок, недопустимые на одной или нескольких платформах. Если недопустимые файлы или папки извлекаются и извлекаются на этих платформах, рабочие каталоги могут быть повреждены. Дополнительные сведения см. в статье о кроссплатформенной совместимости Git.

Вы можете включить или отключить политики для размещения ограничений по именам файлов и папок. Параметры зарезервированных имен блоки отправляются в репозиторий, содержащий имена файлов или папок, недопустимые на всех платформах. Сведения о недопустимых именах см. в статье о кроссплатформенной совместимости Git.

Чтобы задать политику зарезервированных имен, выполните следующие действия.

  1. Выберите репозитории> параметров проекта и выберите репозиторий, если вы хотите настроить только этот репозиторий.
  2. На вкладке "Политики" на странице "Все репозитории" или <"Имя> репозитория" в разделе "Политики репозитория" задайте для зарезервированных имен значение "Вкл." или "Выкл.

Снимок экрана: параметр политики зарезервированных имен.

Политика максимальной длины пути

Не все длины пути разрешены в трех основных файловых системах ОС: Windows, macOS и Linux. Фиксации в общем репозитории могут содержать файлы или каталоги с недопустимой длиной пути на одной или нескольких платформах. Если эти файлы или каталоги извлекаются и извлекаются на платформе, в которой они недопустимы, рабочие каталоги могут стать повреждены. Дополнительные сведения см. в статье о кроссплатформенной совместимости Git.

Параметр максимальной длины пути блокирует отправки, содержащие файлы или каталоги с недопустимой длиной пути на любой платформе. Чтобы узнать, какая длина пути недопустима, ознакомьтесь с кроссплатформенной совместимостью Git. Если этот параметр включен, максимальное значение 248по умолчанию равно, так как максимальная длина составляет 100 % для всех трех основных платформ.

Можно изменить максимальное значение пути. Например, если у вас есть только разработчики macOS или Linux в вашей организации, можно задать максимальную длину значения, поддерживаемого на обеих платформах 1016. Вы также можете задать более низкое максимальное значение пути для применения соглашений об именовании каталогов организации.

Чтобы задать максимальную политику длины пути, выполните следующие действия.

  1. Выберите репозитории> параметров проекта и выберите репозиторий, если вы хотите настроить только этот репозиторий.
  2. На вкладке "Политики" на странице "Все репозитории" или <"Имя> репозитория" в разделе "Политики репозитория" задайте максимальную длину пути в значение "Вкл." или "Выкл.".
  3. Если вы включили параметр, введите максимальную длину пути.

Снимок экрана: параметр политики максимальной длины пути.

Политика максимального размера файла

Большие файлы, зарегистрированные в Git, остаются в репозитории неограниченное время, увеличивая время клонирования и использование дисков. Рекомендации по управлению большими файлами см. в статье "Управление большими файлами" и хранение больших файлов в Git.

Параметр политики максимального размера файла блокирует доступ к файлам с определенным размером при входе в репозиторий. Если push-запрос содержит новый или обновленный файл, превышающий ограничение, настроенное в этом параметре, push-запрос блокируется. Чтобы удалить большой файл, пользователь должен перезаписать журнал незавершенной отправки и повторить попытку отправки.

Чтобы настроить политику максимального размера файла, выполните следующие действия.

  1. Выберите репозитории> параметров проекта и выберите репозиторий, если вы хотите настроить только этот репозиторий.
  2. На вкладке "Политики" на странице "Все репозитории" или< "Имя> репозитория" в разделе "Политики репозитория" задайте максимальный размер файла включено или выключение.
  3. Если вы включили параметр, выберите максимальный размер файла.

Снимок экрана: параметр политики максимального размера файла.

Следующие шаги