我们的git存储库有一个奇怪的问题。我们引用了两个子模块(不确定这是否重要:一个制造麻烦的子模块位于bitbucket云上,而repo和另一个子模块位于同一个bitbucket服务器实例上)。
如果有人想新签出存储库,他们会得到以下错误:
Cloning into local/path…
Warning: Permanently added the RSA host key for IP address
xx.xxx.xxx.xxx to the list of known hosts.
Permission denied (publickey).
fatal: Could not read from remote repository.
我所期望的是没有正确地设置ssh键,但这里有一个奇怪的部分:如果我们通过文件系统手动复制子模块的内容,那么从那时起,所有的子模块都可以正常工作,而在子模块中切换分支等操作也会很好。
这使我假设一些git设置位于我正在复制的子模块文件夹中,但实际上只有两个git文件: gitignore (它不会忽略任何特殊/可疑的内容)和一个只包含gitdir:./ .git /模块/path/to/子模块的.git文件。
这不应该与权限有任何关系,所以有人能解释为什么手动副本会修复权限问题吗?
发布于 2018-12-18 15:58:03
向本地Bitbucket Server实例添加一个键将更新该Bitbucket Server实例。然而,它根本不会对Bitbucket云做任何事情。
听起来你有两个选择:
发布于 2018-12-20 06:36:37
最后,我移除了子模块,因为它似乎还有其他奇怪的地方。例如,bitbucket显示的克隆链接显示了"git克隆git@bitbucket.org:company/ repo -name.git,它没有被源树正确识别.冒号似乎放错了位置,我们的其他回复指定了端口,然后只使用斜杠指定了到回购的路径。因此,无论回购有什么问题,在几个地方似乎都是错误的,因此我们把它完全扔掉了。“
发布于 2021-07-19 01:41:30
确保您的子模块使用的是用户git (git@bitbucket.org),而不是当前用户。我通过在我的bitbucket.org中为~/.ssh/config
添加一个配置来修正这个问题
host bitbucket.org
user git
https://stackoverflow.com/questions/53842153
复制相似问题