git push a la prj bifurcada; request de extracción a una sucursal principal

Cuando bifurqué el proyecto inicialmente y configuré mi env, tuve esto.

> git branch -a remotes/origin/HEAD -> origin/master remotes/origin/master remotes/upstream/master 

No tengo permiso "push" para el proyecto upstream. Debo enviar requestes de extracción desde mi tenedor.

Una semana después, se creó una nueva sucursal para trabajar en una mejora específica de la cadena ascendente. El equipo puede estar trabajando desde esta twig por muchas semanas.

 remotes/origin/HEAD -> origin/master remotes/origin/master remotes/upstream/new-project-feature remotes/upstream/master 

¿Cuál es la forma adecuada para configurar y enviar el código a esta twig? Esto es lo que hice. ¿Era lo correcto?

 git branch new-project-feature git checkout new-project-feature git rebase upstream/new-project-feature .. code changes .. commit git push origin HEAD:new-project-feature .. go to github and send the pull request. 

¿Cómo sabe el proyecto padre fusionar la request de extracción con su nueva twig de proyecto?

La idea detrás de una request de extracción es:

  • trabajas en una pequeña mejora que te gustaría ver fusionada en la twig ascendente
  • empujas esa mejora a tu tenedor ( origin ) y haces la request de extracción desde allí

tenedor

PERO:

Debes hacer esa mejora en una twig dedicada , no en la twig objective.
Eso significa, no en master o en new-project-feature : esas son twigs de "destino" que, en su fork, están allí para reflejar el repo upstream , a " seguimiento remoto " upstream/master o upstream/new-project-feature .

Por lo tanto, debe crear una o varias twigs, cada una para un cambio pequeño que desee contribuir a la function new-project-feature , insert esa pequeña twig " small_change " y realizar una request de extracción a la function upstream/new-project-feature .

Puede acceder de forma upstream , actualizando su new-project-feature local con lo último de la function upstream / new-project.
Luego puede volver a establecer una base de datos en su twig "small_changes" sobre la twig new-project-feature actualizada, y continuar trabajando en ella.

Tenga en count que si new-project-feature cambia en sentido ascendente después de que ya haya realizado su request de extracción desde la bifurcación, todo lo que necesita hacer es:

  • search y actualizar localmente la new-project-feature twig de new-project-feature
  • rebase su small_change twig de cambio en la parte superior de la característica de proyecto nuevo
  • verificar que todo funcione
  • git push --force origin small_change

El último impulso forzado actualizará automáticamente su request de extracción: no tendrá que hacer una segunda request de extracción .
Ver más en " ¿Cómo hacer una request de extracción de Github? ".