Pregunta

Ok, entonces tengo un gran proyecto Github en el que no se supone que fusione mi pequeña rama Stacia. Sin embargo, parece que Heroku solo toma en serio a MASTER. Parece que empujé mi rama, pero, por ejemplo, si solo tengo mi rama, incluso actúa como si no hubiera código en el servidor. Ni siquiera puedo instalar mis gemas ya que el archivo .gems está en mi sucursal.

Básicamente, ni siquiera quiero que Heroku sepa que hay un maestro. Solo quiero usar mi rama de prueba Stacia. Pero sigue ignorando mi sucursal local. ¿Hay alguna forma de hacer esto? Y de nuevo, no quiero sobrescribir nada en el repositorio principal de Github (¡eeek!) Pero estaría bien probablemente si tuviera tanto master como mi rama en heroku y los fusionara allí.

Soy un novato git total (en Windows no menos), así que tengan paciencia conmigo.

¿Fue útil?

Solución

El primer paso es asegurarse de tener una nueva base de datos de su rama local sobre su maestro (Supongamos que está en su repositorio 'mainGitHubRepo')

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

Luego regrese a su rama y reprodúzcala encima de mainGitHubMaster:

git checkout Stacia
git rebase mainGitHubMaster

Como georgebrock menciona en el comentario, no tiene que crear la rama local intermedia mainGitHubMaster : puede volver a crear una base directamente encima de la rama de búsqueda.

git checkout Stacia
git rebase maingithubrepo/master

Después de eso, puede empujar su rama a su bifurcación GitHub , y luego haga una solicitud de extracción .

  

Para insertar una sucursal local en un control remoto establecido, simplemente necesita usar:
   git push REMOTENAME BRANCHNAME .
  Si no desea usar el mismo nombre en la rama remota, puede usar:
   git push REMOTENAME LOCALBRANCHNAME: REMOTEBRANCHNAME .

(que es lo que David Dollar menciona en su respuesta : git push heroku yourbranch: master )

Nota: si tiene su propio tenedor en GitHub, podría trabajar directamente en 'maestro' para este tenedor, lo que significa que su solicitud de extracción vendría de una rama 'maestra', lo que aumenta sus posibilidades de ser considerado.
Pero el proceso mencionado sigue siendo válido: su solicitud de extracción debe dar lugar a fusiones triviales para el que integrará sus cambios, por lo tanto, el paso de rebase se realizará localmente.

Otros consejos

Si quiere empujar una rama diferente a Heroku, puede hacer algo como

git push heroku yourbranch:master
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top