如何使用包含“/”的个人访问令牌通过 https 进行 git clone?

Ent*_*nte 4 git bitbucket git-clone access-token

我正在尝试使用个人访问令牌从 Bitbucket 克隆存储库:

$ git clone https://{user}:{token}@bitbucket.repo/myrepo.git
Run Code Online (Sandbox Code Playgroud)

Bitbucket 刚刚连续四次创建了一个包含正斜杠 ( /)的访问令牌。使用这样的令牌git clone会产生以下错误:

fatal: unable to access 'https://{user}:{token}@bitbucket.repo/myrepo.git': URL using bad/illegal format or missing URL
Run Code Online (Sandbox Code Playgroud)

第五个令牌(没有/)有效。那么,如何git clone使用包含 的个人访问令牌通过 https /

Hum*_*Bee 9

当您从 git 生成令牌时,更有可能在访问令牌中生成特殊字符。当您按原样使用保留的特殊字符传递这些令牌时,您最终会遇到错误。要克服这个问题,您需要将特殊字符替换为相应的字符。

在您的情况下,您需要将 / 替换为 %2F。

!   #   $    &   '   (   )   *   +   ,   /   :   ;   =   ?   @   [   ]
%21 %23 %24 %26 %27 %28 %29 %2A %2B %2C %2F %3A %3B %3D %3F %40 %5B %5D
Run Code Online (Sandbox Code Playgroud)

参考: https: //fabianlee.org/2016/09/07/git-calling-git-clone-using-password-with-special-character/


Ent*_*nte 8

/用它们的 url-encoded representation替换 all %2F