Как ограничить слияние из определенных веток - PullRequest
1 голос
/ 24 мая 2019

Я хотел бы, чтобы только определенные ветви сливались с определенными ветвями.

Пример: я хочу сделать master ветку, принимающую запросы на извлечение только из test ветви, а test ветку, принимающую только от development Разветвление.

Как я могу сделать это ограничение для TFS / Git?

У нас есть некоторые политики в отношении рецензентов и проверки сборки.

Ответы [ 2 ]

1 голос
/ 26 мая 2019

Если у вас есть политики ветвления, вы можете обойти эту проблему:

В определении сборки (которое вы указали при проверке сборки) добавьте задачу PowerShell, которая проверяет исходную ветвь запроса на извлечение.,Если исходная ветвь не та, которую вы хотите, сборка завершится неудачей.

Например, в следующем сценарии, если исходная ветвь не test, сборка завершится неудачей, поэтому добавьте ее в masterпроверка сборки ветки:

$sourceBranch = "$(System.PullRequest.SourceBranch)"

if($sourceBranch -ne "test")
{
    exit 1
}
0 голосов
/ 29 мая 2019

Я решил свою проблему с помощью интеграции сторонних веб-хуков.

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

После этого я добавил эту интеграцию для слияния политик.

Так круто, так просто.Спасибо всем.

...