gerrit - git (tirez vs checkout vs cherrypick) qui est pour quoi?
Dans Android gerrit ex: lien, pour télécharger le patch, je vois 4 options.
- pensions de télécharger
- caisse
- pull
- cherry-pick
Quelle est la différence entre eux?
Voici ce que je pense d'eux. Veuillez préciser
- pensions de téléchargement --> Téléchargements de l'intégralité du code source de git repos dans le projet) jusqu'à ce commit
- checkout --> Pas sûr de ce qu'il est.
- pull --> Pas sûr de ce qu'il fait?
- cherry-pick --> Il essaie de télécharger seulement ce changement et de les intégrer dans le code source.
Je sais que tirer et de départ sont différentes de cherry-pick. Mais comment sont-ils différents?
- Remarque pour les answerers: cette question est à propos de Gerrit, pas Git. Si vous postez une réponse expliquant la signification de ces termes dans Git, vous n'êtes pas de répondre à cette question.
Vous devez vous connecter pour publier un commentaire.
Vous avez raison sur le premier. Voici le reste d'entre eux:
Caisse: Extrait les dernières modifications. Vous devriez déjà avoir ce repo téléchargé. Il ne pas fusionner ces nouveaux changements, mais rend votre répertoire de travail en tenir compte. Vous pouvez fusionner des fichiers à votre loisir plus tard.
Pull: Extrait les changements ET fusionne eux dans la branche locale du même nom.
Cherry-pick: Extrait la validation et joue sur le haut de la branche locale, ainsi la création d'un tout nouveau commit qui arrive à avoir les mêmes changements que l'un il a cherché.
Ils sont un peu différentes de ce qu'ils signifient réellement dans
git
.checkout
etcherry-pick
ne pas récupérer automatiquement les modifications.checkout
faut justeHEAD
à un commit que vous spécifiez, et donc de faire de répertoire de travail exactement comme il l'était lors de la validation. De même,cherry-pick
est utilisé pour la relecture s'engage dont vous disposez déjà d'un accès local à des.Avec git, vous avez votre propre version du référentiel. Que vous synchroniser avec les autres référentiels. Avec
fetch
vous de mettre à jour vos références à distance, c'est à dire. l'actualisation de ce que les autres suis arrivé. Aveccheckout
vous passez à une révision spécifique. Vous voulez faire cela, si vous venez de commencer l'utilisation de ce.Maintenant, si vous êtes déjà à la suite d'une branche distante, vous pourriez seulement besoin de mettre à jour votre succursale locale. C'est ce que
pull
fait pour vous. Il s'applique à tous les changements dans la branche distante de votre local. Vous avez besoin de cette si vous l'utilisez déjà, vous voulez juste de mettre à jour.cherry-pick
vous permettent de choisir un changement de n'importe où dans le référentiel et l'appliquer sur votre succursale locale. C'est pratique si vous êtes sur une autre branche pour une raison quelconque, mais encore besoin de ce changement spécifique. Sachez que si vous de choisir sans pousser à changer que ce changement n'est pas persistant. Il s'est engagé à votre dépôt local, mais pas à la télécommande (il pourrait être ce dont vous avez besoin dans des cas tout de même).En savoir plus sur les bases de git par exemple ici
de votre commande: vous voulez l'utiliser lorsque vous êtes en fonction sur un CHANGEMENT particulier dans une branche. dites à votre collègue a vérifié dans certaines Api pour vous de consommer, et vous pouvez payer que le CHANGEMENT vers une nouvelle branche locale et de commencer à travailler sur votre changement.
Cherrypick: vous souhaitez appliquer un CHANGEMENT particulier à votre succursale locale ou une version particulière de la branche, alors vous cherrypick.
Imaginez que vous avez un patch correctif dans votre version 1.1, et que vous souhaitez appliquer cette correction/MODIFICATION de votre branche 2.0, vous pouvez simplement cherrypick il.
Il va créer un nouveau CHANGEMENT dans votre branche 2.0 contenant le correctif.
ici est une représentation graphique:
http://think-like-a-git.net/sections/rebase-from-the-ground-up/cherry-picking-explained.html