56 votes

Que se passe-t-il lorsque je fais git pull origin master dans la branche develop?

Disons que j'ai une branche de sujet privée appelée develop avec 2 commits avant master.

Que fait git pull origin master ?

Tout tirer du maître distant dans le développement local et le fusionner? Tirez tout dans la branche principale locale et fusionnez-le?

Et existe-t-il un moyen de mettre à jour le maître à partir du développement sans git checkout master premier?

83voto

mrj Points 693

git pull origin master tire la branche master à partir de la télécommande appelé origine dans votre branche. Il n'affecte que votre branche courante, pas de votre local de la branche master.

Il va vous donner l'histoire à la recherche de quelque chose comme ceci:

- x - x - x - x (develop)
   \         /
    x - x - x (origin/master)

La branche principale locale n'est pas pertinent dans le présent. git pull est essentiellement une combinaison de git fetch et git merge; il atteint la branche distante, puis les fusionne dans votre branche. C'est une fusion comme les autres; qu'il n'a rien de magique.

Si vous voulez mettre à jour votre local de la branche master, vous n'avez pas le choix, mais à vérifier. Il est impossible de fusionner dans une branche qui n'est pas vérifié, parce que Git a besoin d'un travail de l'arbre afin d'effectuer la fusion. (En particulier, il est absolument nécessaire afin de rendre compte des conflits de fusion et de vous permettre de les résoudre.)

Si vous connaissez la traction en maître serait un fast-forward (c'est à dire vous n'avez pas de s'engage dans votre branche master qui ne sont pas à l'origine du master), vous pouvez contourner, comme décrit dans cette réponse.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X