Git Push vs. Git Push Heroku Master - PullRequest
       40

Git Push vs. Git Push Heroku Master

19 голосов
/ 11 декабря 2010

Я только что перешел с ноутбука на ПК на Mac, и я заметил любопытную разницу в том, как реагируют мои команды git.

Раньше я делал бы следующее:

git add .
git commit -m "These are my new changes"
git push # This would update my repo on github
{enter password}
git push heroku master # This would push to my app on heroku
{enter password}

Теперь, когда я делаю git push, приложение просто развертывается на Heroku, не нажимая на мой репозиторий Github.

Как я могу убедиться, что я обновляю оба места?

Редактировать

Спасибо за ваши два ответа! Я ценю разъяснение разницы между git push и git push heroku master в том, что git push движется в направлении происхождения, которым, по-видимому, является Heroku.

Как изменить настройки, чтобы они работали как раньше? то есть я хочу, чтобы git push подтолкнул к моему репо на Github, и я хочу, чтобы git push heroku master подтолкнул к Heroku. Первый в настоящее время толкает прямо к Героку, полностью минуя Гитхуба.

Ответы [ 3 ]

28 голосов
/ 11 декабря 2010

Чтобы получить желаемое поведение, вам нужно удалить существующие пульты и повторно добавить их:

git remote show origin # copy down the heroku URL
git remote rm origin
git remote add origin [github URL]
git remote add heroku [heroku URL]
2 голосов
/ 11 декабря 2010

Простое использование команды git push, то есть пропуская аргументы, означает, что git должен будет использовать значения по умолчанию, которые будут вашим первым удаленным хранилищем (обычно называемым 'origin') в качестве места назначения, и ваша локальная главная ветка в качестве источника. В вашем случае, я предполагаю, что вы сначала клонировали проект из GitHub, что делает ваш удаленный по умолчанию GitHub.

Когда вы указываете аргументы git push heroku master, вы явно говорите, что нужно отправить вашу локальную ветку master на удаленный сервер с именем heroku - таким образом, GitHub не обновляется этой командой.

(Возможно, heroku был вашим первым пультом по умолчанию на ПК, а когда вы перешли на Mac, пульт origin был клоном из GitHub?)

2 голосов
/ 11 декабря 2010

Команда git push по умолчанию отправляет на пульт с именем origin.Обычно это указывает на место, откуда вы клонировали свой репозиторий, но вы можете изменить его позже.

Команда git remote show покажет список всех пультов.Затем git remote show origin и git remote show heroku подробно расскажут, как каждый из них сконфигурирован.

Вы можете управлять и изменять URL для каждого пульта, используя команду git remote.

...