Maison outils de développement git Comment modifier l'historique dans git

Comment modifier l'historique dans git

Jan 14, 2022 pm 02:19 PM
git

Méthode : 1. Utilisez la commande "git commit --amend" pour modifier l'enregistrement de l'historique une fois ; 2. Utilisez la commande "git rebase -i spec commit number" pour modifier plusieurs enregistrements de l'historique ; La commande branch --filer "Plage modifiée de la commande" réécrit l'historique.

Comment modifier l'historique dans git

L'environnement d'exploitation de cet article : système Windows 10, Git version 2.30.0, ordinateur Dell G3.

Comment modifier l'historique de git

Joueur junior git amend

Si vous vous retrouvez désactivé après la soumission, vous pouvez utiliser git commit --amend pour modifier la soumission précédente. Une fois cette commande exécutée, elle supprimera la validation précédente de la branche actuelle, restaurera l'espace de travail à l'état dans lequel il a été préparé pour la dernière fois (tout en mélangeant les modifications après la dernière validation), puis affichera une interface vim pour vous. et modifiez les dernières informations de validation. Après avoir enregistré dans vim, toutes les modifications actuelles seront soumises avec de nouvelles informations de soumission.

Cette commande ne peut modifier que le dernier commit. Une commande équivaut à exécuter la série d'actions suivante :

    $ORIG_HEAD=`git show`#保存当前的这次提交的 commit 号
    $git reset --soft HEAD^#回到最后一次提交准备提交前的状态
    $...#做一些操作和修改
    $git commit -c $ORIG_HEAD#表示用最后一次提交的提交信息来做为提交信息,不过会调出编辑器界面
Copier après la connexion

Joueur intermédiaire git rebase

Le git commit --amend précédent ne peut modifier que le dernier commit, mais quand Sur un coup de tête, lorsque nos mains sont désactivées, cette commande ne peut pas nous sauver. Pour le moment, nous devons utiliser l'outil tueur de git rebase -i pour nous aider à modifier ces événements passés insupportables.

En fait, git rebase -i n'est pas une commande spécifiquement utilisée pour modifier les enregistrements de l'historique, mais une commande qui nous permet d'effectuer des opérations de rebase de manière interactive (c'est-à-dire une par une), mais nous pouvons utiliser cette commande pour y parvenir Pour les modifications à l’historique des commits.

La méthode d'utilisation de cette commande est git rebase -i . Par exemple, vous pouvez utiliser git rebase -i HEAD~3 pour modifier trois soumissions : cette soumission, la dernière soumission et la soumission précédente.

Comment modifier lhistorique dans git

Comme le montre l'image, si je soumets ces trois modifications et que je saisis git rebase -i HEAD~3, l'interface suivante apparaîtra :

Comment modifier lhistorique dans git

C'est l'interface d'un éditeur vim. Lors de l'édition de ce script, les commandes pouvant être utilisées sont les six commandes dans les commentaires ci-dessous. Après avoir quitté la page où vous la modifiez actuellement, git effectuera les opérations correspondantes sur les soumissions une par une selon ce script (en commençant par la première soumission).

Si vous souhaitez simplement modifier les informations de validation, remplacez tous les choix par r, puis : wq save, puis git vous permettra de les modifier une par une en commençant par les premières informations de validation.

Parmi les commandes restantes, nous ferons apparaître l'éditeur vim lors de la modification de la soumission correspondante. À ce moment, le pointeur HEAD pointe vers cette soumission. À ce moment, vous pouvez utiliser git commit --amend pour y apporter diverses modifications. soumission, puis exécutez git rebase --continue poursuivra l'opération suivante ; s fusionnera cette soumission et sa soumission parent en une seule soumission lors de la modification de la soumission correspondante ; f est similaire à s mais ignorera les informations de la soumission actuelle et directement ; utiliser Les informations de la soumission parent ; x nécessite de saisir la commande après x, puis de l'exécuter lorsque HEAD pointe vers cette soumission. Ces commandes peuvent également être utilisées pour réorganiser les soumissions et les diviser.

La branche de filtre git tueuse ultime

Supposons qu'après avoir soumis N fois, nous découvrions soudainement que les adresses e-mail de nos soumissions étaient toutes fausses (╯°□°)╯︵ ┻━┻, à ce moment-là, si vous l'utilisez avant, les commandes mentionnées seront probablement épuisées avant d'être terminées. À ce stade, nous pouvons utiliser git filter-branch pour réécrire la branche, qui peut effectuer nos opérations prédéfinies sur chaque soumission par lots

git filter. Le format d'utilisation de base de la commande -branch est git filter-branch -- 'Command' . Différents filtres fourniront différentes entrées et sorties à la commande, par exemple --msg -filter. signifie modifier les informations de validation, les informations de validation d'origine sont lues à partir de l'entrée standard et les nouvelles informations de validation sont sorties vers la sortie standard ; --tree-filter signifie modifier la liste des fichiers, etc. Enfin, il y aura une plage de réécriture ; , par exemple, git filter-. branch --env-filter 'GIT_AUTHOR_EMAIL=john@example.com export GIT_AUTHOR_EMAIL' HEAD peut être utilisé pour réécrire la boîte aux lettres. Il est recommandé de créer une branche pour essayer avant d'appeler la commande, puis d'exécuter. l'opération sur la branche que vous souhaitez modifier

Apprentissage recommandé : "Tutoriel 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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

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

Quelles bibliothèques sont utilisées pour les opérations du numéro de point flottantes en Go? Quelles bibliothèques sont utilisées pour les opérations du numéro de point flottantes en Go? Apr 02, 2025 pm 02:06 PM

La bibliothèque utilisée pour le fonctionnement du numéro de point flottante dans le langage go présente comment s'assurer que la précision est ...

Comment exécuter le projet H5 Comment exécuter le projet H5 Apr 06, 2025 pm 12:21 PM

L'exécution du projet H5 nécessite les étapes suivantes: Installation des outils nécessaires tels que le serveur Web, Node.js, les outils de développement, etc. Créez un environnement de développement, créez des dossiers de projet, initialisez les projets et écrivez du code. Démarrez le serveur de développement et exécutez la commande à l'aide de la ligne de commande. Aperçu du projet dans votre navigateur et entrez l'URL du serveur de développement. Publier des projets, optimiser le code, déployer des projets et configurer la configuration du serveur Web.

Gitee Pages STATIQUE Le déploiement du site Web a échoué: comment dépanner et résoudre les erreurs de fichier unique 404? Gitee Pages STATIQUE Le déploiement du site Web a échoué: comment dépanner et résoudre les erreurs de fichier unique 404? Apr 04, 2025 pm 11:54 PM

GiteEpages STATIQUE Le déploiement du site Web a échoué: 404 Dépannage des erreurs et résolution lors de l'utilisation de Gitee ...

Comment spécifier la base de données associée au modèle de Beego ORM? Comment spécifier la base de données associée au modèle de Beego ORM? Apr 02, 2025 pm 03:54 PM

Dans le cadre du cadre de beegoorm, comment spécifier la base de données associée au modèle? De nombreux projets Beego nécessitent que plusieurs bases de données soient opérées simultanément. Lorsque vous utilisez Beego ...

Quelles bibliothèques de GO sont développées par de grandes entreprises ou fournies par des projets open source bien connus? Quelles bibliothèques de GO sont développées par de grandes entreprises ou fournies par des projets open source bien connus? Apr 02, 2025 pm 04:12 PM

Quelles bibliothèques de GO sont développées par de grandes entreprises ou des projets open source bien connus? Lors de la programmation en Go, les développeurs rencontrent souvent des besoins communs, ...

La production de pages H5 nécessite-t-elle une maintenance continue? La production de pages H5 nécessite-t-elle une maintenance continue? Apr 05, 2025 pm 11:27 PM

La page H5 doit être maintenue en continu, en raison de facteurs tels que les vulnérabilités du code, la compatibilité des navigateurs, l'optimisation des performances, les mises à jour de sécurité et les améliorations de l'expérience utilisateur. Des méthodes de maintenance efficaces comprennent l'établissement d'un système de test complet, à l'aide d'outils de contrôle de version, de surveiller régulièrement les performances de la page, de collecter les commentaires des utilisateurs et de formuler des plans de maintenance.

Comment résoudre le problème de conversion de type user_id lors de l'utilisation du flux redis pour implémenter les files d'attente de messages dans le langage Go? Comment résoudre le problème de conversion de type user_id lors de l'utilisation du flux redis pour implémenter les files d'attente de messages dans le langage Go? Apr 02, 2025 pm 04:54 PM

Le problème de l'utilisation de Redessstream pour implémenter les files d'attente de messages dans le langage GO consiste à utiliser le langage GO et redis ...

Comment améliorer la précision de la segmentation des mots jieba dans l'analyse des commentaires pittoresques? Comment améliorer la précision de la segmentation des mots jieba dans l'analyse des commentaires pittoresques? Apr 02, 2025 am 07:09 AM

Comment résoudre le problème de la segmentation des mots jieba dans l'analyse des commentaires pittoresques? Lorsque nous effectuons des commentaires et des analyses pittoresques, nous utilisons souvent l'outil de segmentation des mots jieba pour traiter le texte ...

See all articles