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:
EDITAR
master branch
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)
git pull origin master
aparece un post con muchas líneas que muestran la twig que se está actualizando.
Vuelvo a ejecutar el command git pull origin master
aparece un post de http://github.com/username/project
Presiono el button verde para confirmar cambios y presionar. una window emergente nothing to commit
parece nothing to commit
Ejecuto el command git checkout master
su sucursal ya está actualizada con el origen / maestro
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:
- ¿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:
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
.
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.