¿Tengo que fusionar manualmente una twig con el maestro después de empujar la twig a github?

Estoy haciendo esta pregunta porque estoy un poco confundido (solo ligeramente).

Como estoy usando Pycharm (en una twig que no sea maestra) , me ofrece la posibilidad de comprometer y enviar cambios de una twig a github.

así que solo hago eso.

Ahora…

Después , corro esto:

 current branch *test 1.git pull origin master 2.git checkout master 3.git merge test 

en 1. me dice que todo está actualizado. luego pasa a 3. también me dice todo al día con el master .

Preguntas:

  1. ¿Qué sucede cuando me comprometo-empujar una twig a Github?
  2. ¿Debo ejecutar el bloque de código anterior después de pasar esa twig al maestro?

EDITAR

  1. Comienzo en la master branch
  2. git checkout test .

aparece un post

 switched to branch test. your branch is ahead of origin/test by 3 commits. (use "git push" to publish your local commits) 
  1. Ejecuto el command git pull origin master

aparece un post con muchas líneas que muestran la twig que se está actualizando.

  1. Vuelvo a ejecutar el command git pull origin master

    aparece un post de http://github.com/username/project

    • branch master -> FETCH_HEAD Ya actualizado
  2. Presiono el button verde para confirmar cambios y presionar. una window emergente nothing to commit parece nothing to commit

  3. Ejecuto el command git checkout master

su sucursal ya está actualizada con el origen / maestro

  1. Ejecuto el command git merge test

    TODO ACTUALIZADO !!!

git merge test ¿por qué git merge test ?

en 1. me dice que todo está actualizado. luego pasa a 3. también me dice todo al día con el maestro.

 $ git pull origin master 

Este command hace es equivalente a

 $ git fetch origin master $ git merge master 

El primer paso descarga todos los cambios de la twig master en el control remoto de origin (que es un apodo para su repository de GitHub). El segundo command combina master (que ahora incluye cualquier cambio de GitHub) en la twig actual ( test ). Como probablemente haya creado la twig en el master y no haya realizado ningún otro cambio, recibirá el post de que todo está actualizado.

No estoy seguro de por qué el paso 3 dice que todo está actualizado con el maestro. Probablemente haya realizado otros commands que no ha publicado aquí, ya sea para confirmar los mismos cambios directamente en la test master o de combinación previamente.

Preguntas:

  1. ¿Qué sucede cuando me comprometo-empujar una twig a Github?

Cuando insertas una twig en GitHub, creas esa twig en tu repository de GitHub junto con todo el historial de cambios que representa. Nada cambia con otras twigs, incluido el master .

¿Tengo que ejecutar el bloque de código de arriba después de empujar esa twig a la maestra?

"empujar una twig para dominar" no tiene ningún sentido porque el master también es una twig. Solo puede empujar una twig a un control remoto . O puede fusionar una twig en otra twig.

Para actualizar su repository de GitHub con sus cambios locales, tiene dos opciones:

  1. Fusiona manualmente tu twig con la master y luego envía master a GitHub con

     $ git checkout master $ git merge test $ git push origin master 

    Tenga en count que esto solo hace los pasos 2 y 3 de sus commands originales. Su primer paso original fusiona master en test . Esto solo es necesario si el master tiene cambios y desea verificar los conflictos de fusión y resolverlos si existen. En cambio, quieres hacer lo contrario: fusionar la test en master . Esta es la razón por la cual pago primero master luego fusión test .

  2. Empuja la twig hacia GitHub y crea una Solicitud de extracción en tu repository de GitHub. Luego, cuando combine el PR, el master en GitHub se actualizará y deberá volver a colocar los cambios en su repository local:

     $ git checkout master $ git pull origin master 

ps Puedes hacer el equivalente de todos estos commands dentro de PyCharm si lo deseas.