我在Bitbucket上有两个仓库 - 我设置了一个访问密钥,可以用来克隆每个项目。仓库A将仓库B作为子模块。
在Windows上...成功克隆仓库A后,
.gitmodules的设置如下:
如果我按照
也许密钥需要刷新吗?不,该密钥可以完美地下载所有其他存储库。
也许密钥本身存在问题,尝试
我在http上没有遇到这个问题-我也不喜欢ssh因为这个问题,但是,唉,它是必需的。
如何解决这个问题?或者我缺少哪些配置?
我将在开发docker容器环境中进行此操作,因此不能排除这一点。
在Windows上...成功克隆仓库A后,
git submodule update --init
失败,原因如下:Cloning into 'C:/Path/to/submodules/B'...
git@bitbucket.org: Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and that the repository exists.
fatal: clone of 'git@bitbucket.org:org/B.git' into submodule path 'C:/path/to/submodules/B' failed
Failed to clone 'submodules/B'. Retry scheduled
.gitmodules的设置如下:
[submodule "submodules/B"]
path = submodules/B
url = git@bitbucket.org:org/B.git
...
如果我按照
.gitmodules
中指定的URL克隆该存储库,它可以正常工作:git clone git@bitbucket.org:org/B.git
似乎通过git submodule update --init
尝试克隆的存储库无法看到/使用我添加的ssh访问密钥。
Git Submodule - Permission Denied的建议没有起作用。也许密钥需要刷新吗?不,该密钥可以完美地下载所有其他存储库。
也许密钥本身存在问题,尝试
ssh -vT git@github.com
。将其更改为bitbucket.org
后,它可以正常工作,并成功进行身份验证。我在http上没有遇到这个问题-我也不喜欢ssh因为这个问题,但是,唉,它是必需的。
如何解决这个问题?或者我缺少哪些配置?
我将在开发docker容器环境中进行此操作,因此不能排除这一点。
这不像以下的问题:
git clone
不同的ssh实现。我认为这是最有可能的罪魁祸首:您的计算机上有两个不同的ssh
命令,其中一个在此处起作用,而另一个则没有。 - torek