1

我有一个公共回购(我想公开),但有用于私人回购的子模块。我部署到 Heroku(这是一个灵活的点——如果它可以解决这个问题,我非常乐意考虑其他 PaaS)并且我在推送我的子模块时遇到了问题——错误消息看起来像这样

Heroku 为您提供了一种添加私有模块依赖项的方法,但这涉及将我的密码放入纯文本.gitmodules文件中,这显然不是一件好事,尤其是对于公共存储库。

如果没有将这些私有存储库符号链接到我的项目中的目录 - 如果没有其他明智的解决方案,我可能会这样做 - 我还能做些什么来(a)保持我的公共 repo 公开,(b)保持我的私有子模块私有, (c) 不要在我的公共回购中公开我的私人回购密码?

4

1 回答 1

0

无需将用户名和密码嵌入存储库 URL。

您可以将所有不同的凭据加密为一个~/.netrc.gpg,并声明一个凭据助手,这将使 git 为正确的 repos 找到正确的凭据。

git config --local credential.helper "netrc -f /path/to/.netrc.gpg -v"

请参阅“使用 https://github 时是否可以跳过密码输入”。正如我在“配置 Git 客户端,例如 Windows 的 GitHub,不要求身份验证
” 中提到的,这甚至与 GitHub 最近的两因素身份验证兼容。

于 2013-09-29T00:06:54.117 回答