Shu*_*eng 7 git version-control http basic-authentication
我有以下用于访问存储库的“虚拟”凭据(用户名和 PAT):
bd6164:o6g5xae5fmqeqdbjatdfjichdk55lweq4jxyt2jvwtjuzxdwwgxa
Run Code Online (Sandbox Code Playgroud)
现在,根据 MS 文档,我应该向gitusing提供这些凭据git -c http.extraHeader="Authorization: Basic <base64>" ...,这会导致身份验证成功。
git但是,如果我直接在 URL 中提供这些凭据:
https://bd6164:o6g5xae5fmqeqdbjatdfjichdk55lweq4jxyt2jvwtjuzxdwwgxa@azuredevops.example.net
然后认证失败。
通常,当我使用 时git,我可以将我的凭据直接放入 URL 中以成功进行身份验证,那么为什么会遇到这些不一致的情况呢?一般来说,URL 中的凭据是否不会转换为 Base64 并在“Authorization: Basic”HTTP 标头中发送?
以下是 MS 提供的有关如何使用 PAT 的文档git:
作品:
# git -c http.extraHeader="Authorization: Basic YmQ2MTY0Om82ZzV4YWU1Zm1xZXFkYmphdGRmamljaGRrNTVsd2VxNGp4eXQyanZ3dGp1enhkd3dneGE=" clone https://azuredevops.example.net/Main/MyProj/_git/MyRepo
Run Code Online (Sandbox Code Playgroud)
失败:
# git clone https://bd6164:o6g5xae5fmqeqdbjatdfjichdk55lweq4jxyt2jvwtjuzxdwwgxa@azuredevops.example.net/Main/MyProj/_git/MyRepo
Run Code Online (Sandbox Code Playgroud)