


Comment créer une nouvelle branche dans un engagement spécifique dans le passé?
Sep 16, 2025 am 02:52 AMPour créer une nouvelle branche à partir de l'ancien engagement, trouvez d'abord la valeur de hachage de l'engagement cible, puis utilisez la commande git Checkout -B ou Git Switch -C pour créer la branche, et enfin vérifier que la branche est générée correctement. Les étapes spécifiques sont les suivantes: 1. Utilisez Git Log --online pour trouver le hachage de validation, ou utilisez le journal GIT -S "mot-clé" pour localiser un engagement spécifique; 2. Exécuter Git Checkout -B New Branch Name Soumission Hash ou Git Switch -C Nouveau nom de la branche Hash de soumission pour créer une branche, GIT prend en charge le hachage abrégé; 3. Confirmez les informations de la branche via GIT LOG et GIT BRANCH et vérifiez le contenu du fichier pour vous assurer qu'il est correct. L'ensemble du processus est simple et fiable et peut être achevé rapidement après la compétence.
Vous êtes probablement ici parce que vous voulez créer une nouvelle branche à partir d'un engagement qui n'est pas le dernier - vous devez peut-être réparer une ancienne version de votre projet ou tester quelque chose dans un état précédent. La bonne nouvelle est que Git rend cela assez simple.
Voici comment le faire étape par étape.
Trouvez le hachage de validation dont vous souhaitez vous ramifier
Avant de créer une branche, vous devez identifier l'engagement exact sur lequel vous souhaitez le baser. Utilisez git log
pour afficher l'historique des engagements:
Git Log --Oneline
Cela montre une liste condensée de validations avec leurs hachages et leurs messages. Copiez le hachage de l'engagement qui vous intéresse - vous l'utiliserez à l'étape suivante.
Si vous n'êtes pas s?r de quel engagement il s'agit, regardez les journaux complets ou recherchez des mots clés en utilisant:
Git Log -s "Terme de recherche"
Créer une nouvelle branche à partir de cette validation
Une fois que vous avez le hachage, courez:
Git Checkout -B New-Branch-Name <Com-Hash>
Ou si vous utilisez Git 2.23 ou plus récent, la manière la plus moderne est:
Git Switch -C New-Branch-Name <Com-Hash>
L'une ou l'autre commande crée une nouvelle branche à partir de cet engagement spécifique. Votre répertoire de travail reflète désormais l'état du code comme il l'était à ce moment-là.
Un astuce rapide: si vous ne vous souvenez qu'une partie du hachage, Git vous permet généralement de taper juste assez de caractères pour l'identifier de manière unique - généralement autour de 6 à 8 caractères.
Vérifiez que la branche a été créée correctement
Il est facile de revérifier. Courir:
journal git
Vous devriez voir l'engagement sur lequel vous avez basé la branche comme la plus récente. Confirmez également le nom actuel de la branche avec:
branche git
Et pour être très s?r, vous pouvez comparer le contenu des fichiers ou consulter quelques points historiques pour vous assurer que rien ne s'est mélangé.
La création d'une branche à partir d'un commit passé n'est pas compliquée, mais savoir comment trouver le bon engagement et utiliser les commandes correctes est importante. Une fois que vous l'avez fait une ou deux fois, elle devient la mémoire musculaire.
Fondamentalement, c'est tout.
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!

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Stock Market GPT
Recherche d'investissement basée sur l'IA pour des décisions plus intelligentes

Article chaud

Outils chauds

Bloc-notes++7.3.1
éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Rungit - VersionoTcheckInstalledGitversion, qui aTutsLikeGitversion2.34.1; usegitversion-vforslightlyMoreDeTail; ifgitisNotRecognised, assurenit'sinstalledAdDedTopathviaofficIalSiteorPackageManager;

Utilisez Gitpull - Rebase pour réappliquer les engagements locaux en haut de la branche à distance mise à jour, évitant de générer des engagements de fusion redondants, maintenant ainsi l'historique linéaire. Pendant l'exécution, la soumission locale est temporairement enregistrée, les dernières modifications sont tirées, puis la soumission locale est rejouée une par une. Si un conflit se produit, vous devez le résoudre manuellement et exécuter la gitrébase - contourner pour continuer ou se terminer avec la gitrebase -. Il est recommandé de l'utiliser uniquement sur les branches de fonctionnalités non partagées, d'éviter de rebaser des branches communes telles que les principales et d'éviter affecter les collaborateurs. Rebase peut être activé par défaut via les paramètres GitConfig. Avant l'opération, vous devez d'abord assurer les dernières informations pour maintenir l'historique propre et synchroniser les changements en temps opportun.

Usegitarchivetocreateacompressedsnapshotofarepositoryataspecificcommit, excluant.gitmetadata.rungitarchive - format = zip - oupu t = repo-archive.zipheadtopackagethelatestcommitoazipfile, orusetar.gzforatarball.add - préfix = myproject-v1.0 / toincludeaDirect

SetTheUpStreamReMotewith "GitreMoteAddupStream [url]" TolinkyourForkTotheoriginalRepository.2.FetchChangesfromupStreamUsing "gitfetchupStream" TodownloadthelateStupdates.3.MergeThemintoyourLocalmainBranch avec "GitcheckoutMain" "

Usegitlog - auteur = "authorname" tofilterComtsByAuthor, prenant en chargePartialMatchesAnSEMailSearches, withOptionalFormattingLILLIGH

Utilisez GitDiff-Tree - nom uniquement-R pour répertorier tous les fichiers de modification dans la soumission spécifiée. Ajoutez - Name-Status pour afficher l'état du fichier (A / M / D), qui convient au traitement de script et est concis en sortie.

GithubrequireSersonalAccessStOkens (Pat) à la place des motswordsforhttsgitoperations.2.GenerateApatiNSettingswithrepospeansedsexpiration.3.UsetheTokenAsapasswordwhenPropritDuringGitoperationsLikeclone.4

TosearchForastRingAcRossallgitCommits, usegitlog-s "String" tofindCommitsThatDdedorreMovedThestring, gitlog-g "regex" forpatternmatchingIndiffs, orgitgrep "string" $ (gitrev-list - all) tosearchfileverseThroughThistory.
