Cet article fait partie de notre série "Advanced Git" en cours. Restez à l'écoute pour les futurs versements en suivant la tour sur Twitter ou en vous abonnant à leur newsletter.
Interactive Rebase: le meilleur ami de votre histoire Git
Interactive Rebase est un puissant outil GIT, offrant un large éventail d'options pour affiner votre historique de validation local avant de partager des changements avec votre équipe. Considérez-le comme le couteau suisse de l'armée de Git. Explorons ses capacités et ses applications pratiques.
Interactive Rebase vous permet de modifier votre historique de validation pour améliorer l'organisation et la clarté. Les actions clés incluent:
Remarque importante: Interactive Rebase réécrit votre historique de validation, en attribuant de nouveaux ID de hachage aux commits concernés. Étant donné que les ID de validation sont des identificateurs cruciaux (SHA-1 Checksours), cela crée des engins entièrement nouveaux. Par conséquent, n'utilisez jamais l'interactive Rebase sur les validations déjà poussées vers un référentiel distant partagé. Cela pourrait perturber le travail de vos collègues. Utilisez-le pour nettoyer votre histoire locale avant de fusionner et de pousser vers une branche partagée.
Quelle que soit l'opération spécifique (supprimer, messagerie, combinaison, etc.), le flux de travail reste cohérent:
git log
pour examiner l'historique de votre projet avant de commencer.Illustrons avec des exemples:
Pour le commit le plus récent, git commit --amend
propose une solution plus simple. Cela ouvre votre éditeur par défaut pour modifier le message et le contenu. Cependant, évitez de modifier les commits poussés .
Pour les commits plus âgés, utilisez une rébase interactive:
git repase -i tête ~ 3
Cela ouvre un éditeur montrant les trois commits. Changez pick
pour reword
pour modifier le message. Enregistrez, fermez et modifiez à nouveau le message avant d'économiser et de sortir.
Pour combiner des commits (par exemple, "7b2317cf modifie la structure de la page" et "6BCF266 Optimiser le balisage"), déterminez la validation et l'utilisation de la base:
git repase -i tête ~ 3
Changez pick
en squash
sur le deuxième engagement (le combinant avec celui au-dessus ). Économisez et fermez. Une nouvelle fenêtre d'éditeur semble créer un message de validation combiné.
Astuce de la tour: dans la tour, la traînée et la chute s'engage à écraser ou cliquez avec le bouton droit pour modifier les messages de validation.
Utilisez le mot-clé drop
pour supprimer un engagement:
Drop 0023cdd Ajouter des robots simples.txt Choisissez 2B504BE Changer les gros titres pour environ et empreinte Choisissez 6BCF266 Optimise Structure de balisage dans la page d'index
Si vous avez besoin d'annuler une rebase interactive, utilisez:
Git Rebase - Abort
Cela couvre juste une fraction des capacités de Rebase interactives. Explorez son plein potentiel et d'autres techniques GIT avancées avec notre "Kit Git Advanced Git" gratuit (une collection de courtes vidéos).
Joyeux rebasing! Rejoignez-nous la prochaine fois pour plus d'informations "Advanced Git"!
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!