Heroku используя ветку git сбивает с толку!

Хорошо, поэтому у меня есть большой проект github, который я не должен объединять в свою маленькую ветку Stacia. Однако, похоже, что Героку только серьезно подталкивает МАСТЕР. Похоже, я нажал на свою ветку, но, например, если у меня есть только ветка, она даже действует, как нет кода на сервере. Я даже не могу получить свои драгоценные камни, поскольку файл .gems находится на моей ветке.

В принципе, я даже не хочу, чтобы Героку знал там хозяина. Я просто хочу использовать свою ветку Stacia. Но он игнорирует мою локальную ветвь. Есть ли способ сделать это? И снова я не хочу ничего перезаписывать в главном репозитории Github (eeek!), Но было бы хорошо, если бы у меня были как хозяин, так и моя ветка на героку и объединили их там.

Я - новичок (wow) git (на окнах не меньше), поэтому, пожалуйста, несите меня.

Ответ 1

На первом этапе убедитесь, что вы пересобираете свою локальную ветвь поверх своего мастера (предположим, что она находится в своем репо 'mainGitHubRepo')

git fetch mainGitHubRepo master
git checkout -b mainGitHubMaster mainGitHubRepo/master

Затем вернитесь к своей ветке и воспроизведите ее поверх mainGitHubMaster:

git checkout Stacia
git rebase mainGitHubMaster

Как georgebrock упоминается в комментарии, вам не нужно создавать промежуточную локальную ветвь mainGitHubMaster: вы можете напрямую переустанавливать поверх выборки ветвь.

git checkout Stacia
git rebase maingithubrepo/master

После этого вы можете нажать на ветвь на свою вилку GitHub, а затем сделать запрос на извлечение.

Чтобы направить локальную ветвь на установленный пульт, вам просто нужно использовать:
git push REMOTENAME BRANCHNAME.
Если вы не хотите использовать одно и то же имя в удаленной ветке, вы можете использовать:
git push REMOTENAME LOCALBRANCHNAME:REMOTEBRANCHNAME.

(что есть Дэвид Доллар упоминает в его ответ: git push heroku yourbranch:master)

Примечание. Если у вас есть собственная вилка на GitHub, вы можете работать непосредственно с "мастером" для этой вилки, а это означает, что ваш запрос на тягу будет поступать из ветки "master", повышая ваши шансы на рассмотрение.
Но вышеупомянутый процесс остается в силе: ваш запрос на перенос должен приводить к тривиальным слияниям для тех, кто будет интегрировать ваши изменения, поэтому шаг переадресации должен выполняться локально.

Ответ 2

Если вы хотите нажать другую ветку на Heroku, вы можете сделать что-то вроде

git push heroku yourbranch:master