【问题标题】:How do I push a public repo with private submodules to Heroku without compromising my password?如何在不泄露密码的情况下将带有私有子模块的公共仓库推送到 Heroku?
【发布时间】:2013-09-29 08:06:54
【问题描述】:

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

Heroku 为您提供了add private module dependencies 的方法,但这涉及将我的密码放入纯文本.gitmodules 文件中,这显然不是一件好事,尤其是对于公共回购。

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

【问题讨论】:

    标签: git heroku git-submodules paas


    【解决方案1】:

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

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

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

    见“Is there a way to skip password typing when using https:// github”。
    正如我在“Configure Git clients, like GitHub for Windows, to not ask for authentication”中提到的,这甚至与最近的two-factor authentication of GitHub 兼容。

    【讨论】:

      猜你喜欢
      • 2016-10-04
      • 1970-01-01
      • 2023-03-18
      • 2016-11-05
      • 2021-10-12
      • 2015-04-05
      • 1970-01-01
      • 1970-01-01
      • 2013-09-09
      相关资源
      最近更新 更多