recherche
Maisonoutils de développementgitComment annuler les fichiers de Git

Comment annuler les fichiers de Git

Apr 17, 2025 am 10:51 AM
git文件备份entrepôt local

Il y a trois façons d'annuler le fichier GIT Commit: la commande GIT RESET: déplacez le pointeur de tête vers le commit précédent et annuler le commit récent; La commande GIT REVERT: Créez un nouvel engagement pour annuler la modification de la validation précédente, conserver l'intégrité de l'historique des engagements; La commande de caisse GIT: Restaurez l'état d'un seul fichier vers le commit précédent.

Comment annuler les fichiers de Git

Comment annuler les fichiers en git? Cette question est géniale!

De nombreux débutants, même certains anciens combattants, trouveront des problèmes après la validation de Git: ils ont soumis des fichiers qui ne devraient pas être soumis ou soumis un code incorrect. Ne paniquez pas, la puissance de Git est qu'elle peut facilement gérer ce scénario de «médicament de regret». Dans cet article, je vous emmènerai dans certains informations sur plusieurs façons d'annuler les fichiers et de partager certaines leçons que j'ai apprises au fil des ans dans Git Combat.

Tout d'abord, nous devons être clairs: la validation de Git n'est pas irréversible. La clé est que vous comprenez comment fonctionne GIT et choisissez la bonne commande.

Bases: instantanés et pointeurs

Vous devez comprendre comment Git gère vos projets. Ce n'est pas une sauvegarde de fichiers simple, mais une série de instantanés (engins) pour enregistrer l'état du projet. Chaque engagement est comme un moment dans le temps, enregistrant des instantanés de tous les fichiers à ce moment-là. Le pointeur de tête pointe vers le dernier engagement de la branche actuelle. Une fois que vous comprenez cela, vous pourrez mieux comprendre les opérations suivantes.

Core: Plusieurs façons d'annuler

1. Commande git reset : le temps remonte à

Il s'agit de la méthode la plus courante, qui peut déplacer le pointeur de tête vers le commit précédent, annulant ainsi l'engagement le plus récent. Mais sachez que cela ne fait que déplacer le pointeur, et les modifications du fichier ne sont pas vraiment parties de votre référentiel local.

Par exemple: vous avez soumis le mauvais fichier et souhaitez révoquer le commit, vous pouvez le faire:

 <code class="bash">git reset --soft HEAD^ # 撤销上一个commit,修改保留在工作区git reset --mixed HEAD^ # 撤销上一个commit,修改保留在暂存区(默认) git reset --hard HEAD^ # 撤销上一个commit,修改全部丢弃</code>

HEAD^ fait référence à la commission précédente, HEAD~2 fait référence à la commission précédente, etc. Les trois options --soft , --mixed et --hard déterminent la méthode de manutention de modification après la révocation de la validation. --hard est le plus approfondi, mais le risque est le plus grand, veuillez l'utiliser avec prudence! Personnellement, j'utilise habituellement --mixed pour que je puisse vérifier les modifications et décider de les garder.

2. git revert Command: Élégancement annulé

git reset est plus rugueuse, tandis que git revert est plus élégant. Il crée un nouvel engagement pour annuler la modification de validation précédente. Cela signifie que votre histoire de validation restera intacte, juste un engagement supplémentaire d'annulation.

 <code class="bash">git revert HEAD</code>

Cette ligne de commande créera un nouvel engagement pour annuler le commit précédent. Par rapport à git reset --hard , il est plus sûr et plus conforme au flux de travail de Git. Cette approche est fortement recommandée, en particulier dans les projets multi-personnes.

3. Commande git checkout : restaurer un seul fichier

Si vous souhaitez simplement annuler l'engagement d'un fichier spécifique, pas l'ensemble de la validation, vous pouvez utiliser la commande git checkout :

 <code class="bash">git checkout HEAD^ -- path/to/file</code>

Cette ligne de commande restaurera path/to/file à l'état de validation précédente. Cette commande est très pratique et peut annuler avec précision la modification d'un seul fichier.

Piégé et partage de l'expérience

  • git reset --hard Risque du dur: rappelez-vous toujours que git reset --hard est une opération dangereuse. Il supprimera en permanence les modifications de validation que vous annulez, sauf si vous avez sauvegardé ces modifications. N'utilisez pas cette commande à moins que vous ne soyez très sûr.
  • Synchronisation du référentiel distant: si vous avez poussé le mauvais engagement dans le référentiel distant, vous devez être prudent. git push --force peut forcer les référentiels à distance écrasants, mais cela peut causer des ennuis aux collaborateurs, à l'éviter à moins que vous ne soyez très sûr que cela n'affectera pas le travail des autres. Une meilleure approche consiste à utiliser git revert pour créer un nouvel engagement pour annuler le mauvais engagement, puis le pousser vers le référentiel distant.
  • Stratégie des succursales: l'élaboration de bonnes habitudes de gestion des succursales peut réduire efficacement la survenue de tels problèmes. Avant d'apporter des modifications importantes, créez une nouvelle branche afin que vous puissiez facilement revenir à la branche principale même si le mauvais code est soumis.

Dans l'ensemble, quelle méthode choisir dépend de votre situation spécifique. git revert est généralement l'option la plus sûre, tandis que git reset est plus flexible mais nécessite un fonctionnement minutieux. N'oubliez pas que comprendre le fonctionnement de Git est la clé, ce qui vous permet de faire des choix plus intelligents lorsque vous rencontrez des problèmes. Je vous souhaite un voyage en douceur!

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
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
Git: The Technology, Github: la plate-formeGit: The Technology, Github: la plate-formeApr 28, 2025 am 12:09 AM

Git est un système de contrôle de version distribué créé par Linus Torvaz en 2005, tandis que Github est une plate-forme de collaboration en ligne basée sur GIT. GIT enregistre les modifications du fichier via des instantanés et prend en charge les modèles de branche. GitHub fournit des outils tels que PullRequest pour améliorer l'efficacité de la collaboration.

Objectif de Github: Contrôle de version, collaboration et plusObjectif de Github: Contrôle de version, collaboration et plusApr 27, 2025 am 12:05 AM

GitHub n'est pas seulement un outil de contrôle de version, il offre également des capacités de collaboration, de gestion de projet et de communication communautaire. 1) Contrôle de la version: utilisez GIT pour suivre les modifications de code. 2) Collaboration: Soumettre les modifications de code via PullRequest. 3) Gestion de projet: utilisez des problèmes et des sections de projet pour gérer les tâches. 4) Communication communautaire: Apprenez et communiquez via Fork et participant à des projets open source.

Github vs Git: comprendre les principales différencesGithub vs Git: comprendre les principales différencesApr 26, 2025 am 12:12 AM

Git et Github sont différents outils: Git est un système de contrôle de version, et GitHub est une plate-forme en ligne basée sur Git. Git est utilisé pour gérer les versions de code et GitHub fournit des capacités de collaboration et d'hébergement.

Github: hébergement de code, collaboration et contrôle de versionGithub: hébergement de code, collaboration et contrôle de versionApr 25, 2025 am 12:23 AM

GitHub est un système de contrôle de version distribué basé sur GIT, fournissant les fonctionnalités principales du contrôle de version, de la collaboration et de l'hébergement de code. 1) La création de référentiels, le clonage, la validation et la poussée des modifications sont l'utilisation de base. 2) L'utilisation avancée comprend l'utilisation de GitHubactions pour l'automatisation, le déploiement de sites Web statiques dans GitHubPages et l'utilisation de fonctionnalités de sécurité pour protéger le code. 3) Les erreurs courantes telles que les conflits de fusion, les problèmes d'autorisation et les problèmes de connexion du réseau peuvent être débogués en résolvant manuellement les conflits, en contactant le propriétaire de l'entrepôt et en créant un indicateur indirect. 4) Les méthodes pour optimiser les workflows incluent l'utilisation de stratégies de ramification, les tests automatisés et CI / CD, la révision du code et le maintien de la documentation et des annotations claires.

Git: l'outil, github: le serviceGit: l'outil, github: le serviceApr 24, 2025 am 12:01 AM

Git et Github sont des outils différents: Git est un système de contrôle de version distribué, et GitHub est une plate-forme de collaboration en ligne basée sur Git. Git gère le code via des espaces de travail, des zones de stockage temporaires et des entrepôts locaux, et utilise des commandes communes telles que Gitinit, Gitclone, etc. GitHub fournit des fonctions telles que l'hébergement de code, la mise en jeu, l'émetteur, etc.

Git: le cœur du contrôle de version, GitHub: codage socialGit: le cœur du contrôle de version, GitHub: codage socialApr 23, 2025 am 12:04 AM

Git et Github sont des outils clés pour le développement de logiciels modernes. GIT fournit des capacités de contrôle de version pour gérer le code via des référentiels, des succursales, des engagements et des fusions. GitHub fournit des fonctionnalités d'hébergement et de collaboration de code telles que les problèmes et les requins. L'utilisation de Git et Github peut considérablement améliorer l'efficacité du développement et les capacités de collaboration d'équipe.

Git: le système de contrôle de version, GitHub: la plate-forme d'hébergementGit: le système de contrôle de version, GitHub: la plate-forme d'hébergementApr 22, 2025 am 12:02 AM

Git est un système de contrôle de version distribué développé par Linus Torvaz en 2005, et GitHub est une plate-forme d'hébergement de code basée sur Git fondée en 2008. Git prend en charge la branche et la fusion via des fichiers de gestion de snapshot, et GitHub fournit des demandes de traction, des fonctions de suivi et d'examen de code pour faciliter la collaboration par équipe.

Git et Github: une analyse comparativeGit et Github: une analyse comparativeApr 21, 2025 am 12:10 AM

Git et Github sont des outils clés du développement de logiciels modernes. Git est un système de contrôle de version distribué et GitHub est une plate-forme d'hébergement de code basée sur GIT. Les fonctionnalités principales de Git incluent le contrôle de version et la gestion des succursales, tandis que GitHub fournit des outils de collaboration et de gestion de projet. Lorsque vous utilisez GIT, les développeurs peuvent suivre les changements de fichiers et travailler ensemble; Lorsque vous utilisez GitHub, les équipes peuvent collaborer via PullRequests et Problèmes.

See all articles

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

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

mPDF

mPDF

mPDF est une bibliothèque PHP qui peut générer des fichiers PDF à partir de HTML encodé en UTF-8. L'auteur original, Ian Back, a écrit mPDF pour générer des fichiers PDF « à la volée » depuis son site Web et gérer différentes langues. Il est plus lent et produit des fichiers plus volumineux lors de l'utilisation de polices Unicode que les scripts originaux comme HTML2FPDF, mais prend en charge les styles CSS, etc. et présente de nombreuses améliorations. Prend en charge presque toutes les langues, y compris RTL (arabe et hébreu) ​​et CJK (chinois, japonais et coréen). Prend en charge les éléments imbriqués au niveau du bloc (tels que P, DIV),

Version Mac de WebStorm

Version Mac de WebStorm

Outils de développement JavaScript utiles

Adaptateur de serveur SAP NetWeaver pour Eclipse

Adaptateur de serveur SAP NetWeaver pour Eclipse

Intégrez Eclipse au serveur d'applications SAP NetWeaver.

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

VSCode Windows 64 bits Télécharger

VSCode Windows 64 bits Télécharger

Un éditeur IDE gratuit et puissant lancé par Microsoft