Как связать папку с существующим приложением Heroku с помощью mercurial

У меня есть существующее приложение Django на Bitbucket, и я могу развернуть его на Heroku с помощью hg-git. Всякий раз, когда я хочу запустить какую-либо команду heroku в папке моего приложения, я получаю следующие ошибки:

$ heroku ps
 !    No app specified.
 !    Run this command from an app folder or specify which app to use with --app <app name>
$ heroku logs
 !    No app specified.
 !    Run this command from an app folder or specify which app to use with --app <app name>
etc.

Текущий обходной путь — указать имя приложения: heroku ps --app <app name>, но я ищу способ связать имя моего репозитория с именем удаленного приложения Heroku, например как это делается с помощью git.

Я пока не могу перенести свое приложение на github.


person Maxime R.    schedule 06.04.2012    source источник


Ответы (2)


Я бы предложил попробовать вариант конфигурации "intree" Hg-Git. Установите это, добавив следующее в свой hgrc:

[git]
intree = True

С этим набором репозиторий Git, используемый внутри Hg-Git, будет храниться как каталог «.git» в рабочей копии, а не вложен в каталог «.hg».

Затем Heroku увидит конфигурацию этого репозитория. Добавьте пульт, как предложено в другом ответе (цитируется ниже), и все будет готово.

git remote add heroku [email protected]:<app-name>.git

На данный момент лучшей документацией по параметрам конфигурации Hg-Git, которую я нашел, является файл README, отображаемый на странице проекта Bitbucket: https://bitbucket.org/durin42/hg-git

person davidmc24    schedule 05.08.2012

Учитывая, что heroku просматривает файл .git/config, чтобы получить имя приложения, просто сделайте следующее в локальном репозитории:

git init
git remote add heroku [email protected]:<app-name>.git

Чтобы не засорять ваш репозиторий, вы также добавите следующие строки в .hgignore:

#Git setup
.git/**

Теперь обычные команды heroku больше не запрашивают имя приложения по умолчанию.

person Maxime R.    schedule 09.04.2012
comment
Обратите внимание, что если вы используете git (я знаю, что это не этот вопрос, а то, ради чего я пришел сюда), вместо этого вы должны использовать эту команду: heroku git:remote -a app - person dfrankow; 26.07.2015