【问题标题】:Using another heroku repository as submodule from the heroku server?使用另一个heroku存储库作为heroku服务器的子模块?
【发布时间】:2017-05-24 15:41:16
【问题描述】:

我有两个项目,其中一个使用另一个作为子模块。经过多次尝试和失败后,我最终考虑将远程子模块移动到与新项目相同的 heroku 帐户,认为我可以取消用户授权。

但是授权还是不行:

remote: Git submodules detected, installing:
remote: Submodule 'foo' (ssh://git@heroku.com/foo.git) registered for path 'foo'
remote: Cloning into 'foo'...
remote: Host key verification failed.
remote: fatal: Could not read from remote repository.
remote:
remote: Please make sure you have the correct access rights
remote: and the repository exists.

我应该给 Heroku 什么样的设置?设置 heroku ssh 密钥似乎不起作用,或者我做错了什么:ssh -vvv heroku.com 似乎返回访问权限。

【问题讨论】:

    标签: git heroku ssh-keys


    【解决方案1】:

    您不想这样做,因为 Heroku 的 Git 存储库托管是私有的,并且需要您的 SSH 密钥才能工作。

    您的子模块在本地工作的原因是您的 SSH 密钥能够下拉所有 Heroku Git 存储库。它在 Heroku 上不起作用的原因是 Heroku 环境非常有限。它不会有您的本地 SSH 密钥。这意味着没有办法让它发挥作用。

    你可以做一些事情:

    • 在 Github 或其他主机上公开您的子模块。
    • 将您的子模块变成自己的 Heroku 项目,并公开您从现有 Heroku 项目中调用的 API。
    • 完全摆脱子模块,只需嵌入您的源代码。

    我意识到这有点烦人,但这里的问题是您不能在没有 SSH 凭据的不受信任的环境中使用私有子模块。

    【讨论】:

      【解决方案2】:

      我自己上周一直在尝试找到解决此问题的方法。最后一个选项听起来越来越像我最终可能会走的路。我讨厌合并两个单独的存储库,但我找不到解决方法。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-10-01
        • 1970-01-01
        • 2017-05-17
        • 2016-12-04
        • 1970-01-01
        • 1970-01-01
        • 2013-09-16
        • 1970-01-01
        相关资源
        最近更新 更多