Змусьте Heroku запускати немайстер гіт Git


182

У мене розміщений проект на Heroku, і він дійшов до того, що я хочу зробити альтернативний тестовий сервер (щоб я міг протестувати робітників Heroku, не псуючи виробництво).

Я вже створив свій головний пульт Heroku, на якому працює мій стовбур, та пульт Heroku-dev, на якому я хочу запустити альтернативну гілку.

Моя проблема полягає в тому, що оскільки моя альтернативна гілка не є господарем, Heroku не будує її.

$ git push heroku-dev test
counting objects ...
...
Pushed to non-master branch, skipping build.
To git@heroku.com:example-dev.git
* [new branch]      test -> test

Переключення цієї збірки на головну наразі не є можливим. Очевидно, одним із варіантів є створення цілком нового git repo, що є клоном моєї тестової гілки, але це не дуже ідеально.

Відповіді:


361

Ви можете натиснути альтернативну гілку на Heroku за допомогою Git.

git push heroku-dev test:master

Це підштовхує вашу локальну тестову гілку до головного відділення віддаленого (на Heroku).


12
Дійсно - це теж задокументовано: devcenter.heroku.com/articles/…
Джон Маунтджой

50
Варто також зазначити, що ви готові повернутися до майстра, що вам потрібно зробитиgit push -f heroku master:master
Брайан Армстронг

5
Чи існує спосіб розгортання за допомогою невідповідної гілки на Heroku, щоб зберегти Heroku masterнезайманим для подальшого просування?
Ерік Уокер

3
Ні, Heroku завжди використовує master. Який ваш випадок використання?
jordelver

5
@SDP Щось, що я робив у минулому для налагодження Heroku, - це щось зробити, натисніть на Heroku, потім (якщо це не вийшло) спробуйте щось інше, скопіюйте (з git commit --amend), натисніть на Heroku (використовуючи -fпрапор) і повторюйте до фіксації. Після того, як це буде виправлено, переконайтеся, що фінал --amendє приємним чистим фіксом з розумним повідомленням, а потім переходите до наступної речі. Таким чином ви можете протестувати речі протягом усього дня без декількох комісій. Це не дуже, але це робить роботу :)
Simon

3

У моєму випадку була розроблена гілка за замовчуванням або базовий , тому я використовував:

          git push heroku develop:master 

0

У випадку, якщо git push heroku-dev test: майстер не працює для вас, спробуйте git push heroku test: master. Запам'ятайте "test" у "test: master" - це назва нової гілки, на якій ви знаходитесь.


-1

Вам потрібно спочатку витягнути віддалену гілку, перш ніж ви зможете натиснути гілку, яка не використовується.

Виконайте наступну команду у вашому локальному сховищі

git pull https://heroku:YOUR_HEROKU_API_KEY@git.heroku.com/YOUR_APP_NAME.git
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.