如何通过命令行git或sourcetree使用PAT克隆Azure dev ops git仓库?

nkoocmlb  于 2023-05-18  发布在  Git
关注(0)|答案(3)|浏览(262)

好的,我们的组织有一个azure dev ops仓库的代码。
我一直试图在Mac上通过git命令行克隆它,在Mac上通过sourcetree和在Windows上通过sourcetree克隆它,但没有成功。
我在azure git web UI中创建了一个PAT。
在Mac上,如果我这样做:

$ git clone https://ourorg.visualstudio.com/CMS/_git/ourProj
Cloning into 'ourProj'...
Username for 'https://ourorg.visualstudio.com': xxx
Password for 'https://xxx@ourorg.visualstudio.com': 
fatal: Authentication failed for 'https://ourorg.visualstudio.com/CMS/_git/ourProj/'

对于用户,我尝试了我的Azure用户,我也尝试了PAT。为了传球,我累了我的蔚蓝传球,也累了PAT。
这些选项都不起作用。
对于sourcetree,我也尝试过这些组合o PAT/PAT用户/PAT用户/pass等。但没有成功有什么建议吗?
这是我用来创建PAT的页面:
https://learn.microsoft.com/en-us/azure/devops/organizations/accounts/use-personal-access-tokens-to-authenticate?view=azure-devops
这个文档说使用PAT作为用户和传递,但这根本不起作用。
医生还说你可以这样做:

git clone https://anything:{yourPAT}@dev.azure.com/yourOrgName/yourProjectName/_git/yourRepoName

但这也行不通。
例如,如果我这样做(修复感谢jessejouwing):

$ git clone https://asdf:{myPATgoesHERE}@dev.azure.com/ourorg/CMS/_git/ourProj

在Windows上,我总是看到:
克隆到'我们的项目'... fatal:“https://dev.azure.com/ourorg/CMS/_git/ourProj/”的身份验证失败
PAT 100%正确。
不幸的是,“替代凭据”在我们的组织中被禁用,所以我们必须使用PAT。PAT不工作,所以我不能工作。

b1zrtrql

b1zrtrql1#

git clone https://{yourPAT}@dev.azure.com/yourOrgName/yourProjectName/_git/yourRepoName

这就足够了。

zengzsys

zengzsys2#

只需点击Generate Git Credentials并使用它来验证/克隆您的存储库:

wwwo4jvm

wwwo4jvm3#

如果要避免personalAccessTokens并安装Azure CLI,可以使用以下代码段

az login --allow-no-subscriptions --tenant $tenant 
$azureDevOpsToken = az account get-access-token --resource '499b84ac-1321-427f-aa17-267ca6975798' --query accessToken --output tsv --tenant $tenant
git clone "https://$azureDevOpsToken@dev.azure.com/$organization/$projectName/_git/$repositoyName"

相关问题