git commit и git tag в azure devops yml based pipe - PullRequest
0 голосов
/ 05 апреля 2020

Есть ли хороший способ зафиксировать файл изменений и создать тег в azure DevOps на основе yaml конвейера?

Мой сценарий будет для сборки на node js: каждая сборка будет меняться Пакет. json версия с использованием npm version patch В конце концов, это будет pu sh пакет. json в ветку сборки (очевидно, с условной ветвью == master) и пометит и pu sh a Ветка также.

Грязный путь может быть:

- bash : |
     git add filename.ext
     git push origin HEAD:branchName
     git tag -a tagName -m 'tag message' 
     git push --tags
  displayName: 'Git Commit and Tag from pipeline'

1 Ответ

0 голосов
/ 06 апреля 2020

Вы правы, чтобы зафиксировать изменения и pu sh в исходное репо в azure devops pipe, вам, вероятно, придется запускать команды git в задачах скрипта.

В задаче сценария ваше имя учетной записи в URL-адресе клона репозитория необходимо заменить на $(System.AccessToken) для проверки подлинности (например, https://$(System.AccessToken)@dev.azure.com/yourOrg/yourProj/_git/repoName).

Ниже приведен пример тега и пу sh а azure ветка.

- bash: | 
        git config --global user.email "your@email.com"
        git config --global user.name "yourUsername"

        #git add filename.ext
        git add .
        git commit -m "message" 

        git push https://$(System.AccessToken)@dev.azure.com/yourOrg/yourProj/_git/repoName HEAD:master -q

        git tag -a tagName -m 'tag message'
        git push https://$(System.AccessToken)@dev.azure.com/yourOrg/yourProj/_git/repoName tagName 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...