Git子模块密码提示

SS4*_*S44 8 git deployment ubuntu

我正在尝试设置一个git deploy设置,其中我准备好在登台服务器上的git仓库时推送我的更改,然后使用post-recieve hook将各个分支的代码部署到适当的web根目录.

然而,我遇到的一个问题是每次运行时: git submodule update

我收到密码提示,导致部署脚本冻结.

到目前为止,我尝试过的事情是:

  1. 子模块托管在公共仓库上,因为我只是试图从中读取,我不明白它为什么需要密码.
  2. 也就是说,为了尝试解决这个问题,我为登台服务器创建了新的ssh密钥,当在这个案例之外运行时,能够克服/获取正常而没有任何问题.
  3. 我还检查了.gitmodules和.git/config文件,以确保从正确的位置拉出子模块.
  4. 当运行git子模块更新时,当出现密码提示只是将密码留空并按Enter似乎更新的东西就好了,但是我得到提示的事实是搞乱了我的钩子脚本.

需要注意的一件事是在我的登台服务器上设置repo时,由于防火墙的限制,我无法从我的工作实例中克隆repo,因此我在本地克隆了一个副本,然后将新克隆的版本移动到服务器,我已经能够很好地推动它.

寻找我能得到的任何建议或提示.

lev*_*evi 13

有同样的问题.在我的情况下,它是由子模块"url"设置为httpsURL而不是git@URL引起的.

  • 此处相同,但我可以通过运行以下命令来避免完全删除子模块:从主存储库中运行“git submodulesync --recursive”。这更新了所有子模块 URL (7认同)

小智 10

将 .gitsubmodule 中的 https://.. 更改为 git@... 后运行命令

git 子模块同步 --recursive