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

How can I git clone over https with a personal access token containing '/'?

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

$ git clone https://{user}:{token}@bitbucket.repo/myrepo.git

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

fatal: unable to access 'https://{user}:{token}@bitbucket.repo/myrepo.git': URL using bad/illegal format or missing URL

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

将所有 / 替换为它们的 url 编码表示 %2F

从bitbucket生成token时,access token中更有可能生成特殊字符。当您像使用保留的特殊字符一样传递这些标记时,您最终会遇到错误。为了克服这个问题,您需要用相应的字符替换特殊字符。

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

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

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