2012-02-23 5 views
4

Je suis nouveau à git. J'ai quelques commits locaux mais je veux tirer le dernier code du dépôt et ne veux pas encore pousser le mien. Cependant git pull, crée des fusions inutiles. Quelle est la bonne façon de le faire, c'est-à-dire mettre à jour votre dépôt local sans perdre les modifications.Git tirer après commettre local

Répondre

7

L'outil que vous cherchez est git rebase, bien que vous devriez consulter la documentation à ce sujet avant de commencer à l'utiliser. Il est également généralement bon de faire du développement dans une filiale locale pour réduire les frais généraux de ce type d'opération. Lorsque vous êtes à l'aise, vous pouvez utiliser git pull --rebase pour utiliser la fonction de rebase plutôt que de fusionner pour résoudre les différences après la traction, mais lisez d'abord les documents, car cela peut entraîner des pertes de données ou des maux de tête. C'est un outil utile mais dangereux.

+0

Merci Daniel. Je comprends que le maître d'origine et notre dépôt local sont deux branches distinctes. Il est donc normal de voir des fusions quand quelqu'un pousse quelque chose au repo entre mon commit local et mon push/pull vers/depuis le dépôt ou devrais-je le rebaser pour éviter cela. –

+0

rebase transplante efficacement vos commits à la nouvelle tête, comme si vous les avez écrits là à l'origine. Cela devrait éviter les commits de fusion. La partie "devrait" est ... complexe. Effectivement, c'est une question de goût. Je vous recommande d'éviter le rebasage sauf si vous avez une bonne raison de l'utiliser. –

Questions connexes