在使用Azure Pipelines PowerShell任务进行构建时,我尝试将develop
分支合并到master
分支。
但是在执行命令git push
时,出现此错误:
致命:无法读取以下用户的密码 'https://OrganizationName@dev.azure.com':终端提示已禁用
代码存储库是“ Azure Repos Git”。
git checkout -b master
git config --global user.email "xxxxxxx@xxxx.xxx"
git config --global user.name "xxxxx"
git merge origin/develop
git push origin master
在引用了一些URL之后,我创建了个人访问令牌,并将push命令修改为git push https://PAT@dev.azure.com/OrganizationName
,但仍然无法正常工作。
如果您找到解决此问题的方法,请告诉我。
答案 0 :(得分:1)
正如您提到的,您需要使用PAT,但必须采用这种方式:
git push https://{PAT}@dev.azure.com/{organization}/{project}/_git/{repo-name}
另一种解决方案是在作业选项中“允许脚本访问OAuth令牌”:
在git push中使用System.AccessToken:
git push https://$env:SYSTEM_ACCESSTOKEN@dev.azure.com/......
并将推送权限授予构建用户(在回购设置中):
答案 1 :(得分:1)
类似于 Shayki's answer,但如果您没有运行 powershell 任务,请使用:
git push https://$(System.AccessToken)@dev.azure.com/......
我特别在使用
答案 2 :(得分:0)
请阅读{{3}}。
此帮助程序的目的是减少您必须输入用户名或密码的次数。例如:
$subject != "Chemistry"
[再工作5分钟]
$ git config credential.helper cache $ git push http://example.com/repo.git Username: <type your username> Password: <type your password>
[您的凭据将自动使用]