我有一个名为app1
的Heroku Rails应用程序,它有源代码,并且有效
我想创建一个新的应用程序,灵感来自它但不同,使用不同的代码和URL,所以我运行:
$ heroku fork --from app1 --to app2
$ [...]
$ Fork complete. View it at https://app1.herokuapp.com/
我检查了该网址:克隆的应用程序正常运行 现在让我们将它克隆到我的本地计算机,以便我可以修改它:
$ heroku git:clone -a app2
Cloning into 'app2'...
warning: You appear to have cloned an empty repository.
Checking connectivity... done.
$ cd app2/
$ ls
问题:此文件夹中没有任何内容。存储库是空的!
这怎么可能呢?应用程序是否在没有代码的情况下工作?
我是否有错误的命令来创建代码的本地副本?
答案 0 :(得分:5)
是的,请参阅the documentation,其中指出Git仓库将为空。
该应用正常运行,因为它具有相同的slug。
一般来说,我建议不要将Heroku视为源代码回购 - 而是把它放在另一个地方(比如GitHub)。
答案 1 :(得分:5)
Jon的回答解释了为什么存储库是空的 以下是解决“问题”的方法:
$ cat app1/.git/config
请注意段落url
中origin
的价值
它可能看起来像git@heroku.com:app1.git
然后运行:
$ cd app2
$ git pull git@heroku.com:app1.git
$ git push
这将检索源代码(忽略Your branch is based on 'heroku/master', but the upstream is gone.
消息)并将克隆的slug替换为使用此源代码构建的一个。