Как связать папку с существующим приложением Heroku
У меня есть существующее приложение Rails на GitHub и развернутое на Heroku. Я пытаюсь настроить новую машину для разработки и клонировал проект из моего репозитория GitHub. Однако я не совсем понимаю, как связать эту папку с Heroku. Первоначально я использовал heroku create
команда, но, очевидно, я не хочу делать это на этот раз, так как это создаст еще один экземпляр Heroku.
6 ответов
Heroku связывает ваши проекты на основе heroku
git remote (и несколько других опций смотрите в обновлении ниже). Чтобы добавить пульт Heroku в качестве удаленного в текущий репозиторий, используйте следующую команду:
git remote add heroku git@heroku.com:project.git
где project
это название вашего проекта Heroku (так же, как project.heroku.com
субдомен). Как только вы это сделали, вы можете использовать heroku xxxx
команды (при условии, что у вас установлен Heroku Toolbelt), и вы можете, как обычно, нажать Heroku через git push heroku master
, В качестве ярлыка, если вы используете инструмент командной строки, вы можете набрать:
heroku git:remote -a project
где опять project
это название вашего проекта Heroku (спасибо, полковник Паник). Вы можете назвать Git Remote как хотите, передав -r remote_name
,
[Обновить]
Как отметил Бен в комментариях, пульт не должен называться heroku
чтобы команды gem работали. Я проверил источник, и похоже, что он работает так:
- Если вы укажете название приложения через
--app
вариант (например,heroku info --app myapp
), он будет использовать это приложение. - Если вы указываете удаленное имя Git через
--remote
вариант (например,heroku info --remote production
), он будет использовать приложение, связанное с этим Git Remote. - Если вы не указали опцию и у вас есть
heroku.remote
установить в вашем конфигурационном файле Git, он будет использовать приложение, связанное с этим пультом (например, для установки удаленного использования по умолчанию для "производственного" использования)git config heroku.remote production
в вашем хранилище, и Heroku будет работатьgit config heroku.remote
чтобы прочитать значение этого параметра) - Если вы не укажете опцию, гем не найдет конфигурацию в вашем
.git/config
файл, и гем найдет только один пульт в ваших пультах Git, который имеет "heroku.com" в URL, он будет использовать этот пульт. - Если ни один из этих способов не работает, возникает ошибка с указанием пройти
--app
к вашей команде.
В Heroku CLI для этого есть простой способ. Для приложения с именем 'fall-wind-1624':
$ heroku git:remote -a falling-wind-1624
Git remote heroku added.
Не забывайте, если вы также находитесь на машине, где вы еще не настроили героку
heroku keys:add
Или вы не сможете подтолкнуть или потянуть на репо.
heroku login
git init
heroku git:remote -a app-name123
затем проверьте удаленное репо:
git remote -v
Две вещи, о которых следует позаботиться при настройке новой системы развертывания для старого приложения
1. Чтобы проверить доступ вашего приложения к Heroku (особенно приложению)
heroku apps
в нем будут перечислены приложения, к которым у вас есть доступ, если вы настраиваете в первый раз, вам, вероятно, потребуется
heroku keys:add
2. Затем настройте gitremote.
Для уже созданного приложения Heroku вы можете легко добавить пульт в свой локальный репозиторий с помощью heroku git: remote
команда. Все, что вам нужно, это имя вашего приложения Heroku:
heroku git:remote -a appName
вы также можете переименовать свои пульты с помощью команды gitremote rename:
gitremote rename heroku heroku-dev(you desired app name)
затем вы можете использовать удаленную команду git, чтобы подтвердить, что для вашего приложения установлен пульт
gitremote -v
Используйте вилку героку
Используйте новую команду "heroku fork"! Он скопирует всю среду, и вы должны обновить репозиторий github после!
heroku fork -a sourceapp targetapp
Клонируй это местное
git clone git@heroku.com:youamazingapp.git
Сделайте новый репо на github и добавьте его
git remote add origin https://github.com/yourname/your_repo.git
Нажмите на GitHub
git push origin master
Вероятно, вы должны запустить ssh-agent и добавить свои ключи. Проверь это,
Это помогло мне.
У меня есть мой проект в github и heroku, для загрузки Heroku используйте:
heroku git:remote -a <project>
Документ это: