Récupérer des commits et des fichiers perdus avec Git Reflog
运行 Git Reflog 查看 Head 历史; 2. 找到丢失提交前的 COMMISSER Hash ; 3. 基于该 Hash 创建恢复分支; 4. 合并分支或检出特定文件恢复内容。
Si vous avez déjà perdu accidentellement des commits - que ce soit par une réinitialisation dure, une poussée de force ou simplement une fusion déroutante - git reflog
est votre meilleur ami. C'est comme une machine à remonter le temps pour votre référentiel Git local, suivant tranquillement chaque mouvement de vos pointeurs HEAD
et de branche, même lorsque Git semble les avoir "oubliés".

Voici comment récupérer les engins perdus et les fichiers à l'aide de git reflog
, étape par étape.
? Qu'est-ce que Git Reflog?
git reflog
(abréviation de "Reference Log") Enregistrements lorsque les pointes des succursales et autres références ont été mises à jour dans votre dépôt local. Contrairement à l'histoire régulière du GIT, qui peut être réécrite ou élaguée, le réflog persiste localement pendant un certain temps (généralement 90 jours par défaut).

Exécutez ceci pour voir vos mouvements récents:
réflog git
Vous verrez une sortie comme:

tête a1b2c3d @ {0}: réinitialisation: se déplaçant à la tête ~ 3 F4E5D6G tête @ {1}: Commit: Ajouter une nouvelle fonctionnalité ...
Chaque ligne montre un état de HEAD
passé - parfait pour la récupération.
? ️ récupérer les engins perdus
Disons que vous avez fait une git reset --hard HEAD~3
et que vous avez perdu ces trois derniers commits.
Vérifiez le réflog:
réflog git
Recherchez le hachage de validation avant la réinitialisation (par exemple,
f4e5d6g
dans l'exemple ci-dessus).Créez une nouvelle branche à ce moment-là:
Git Branch Recovery-Branch F4E5D6G
Maintenant, vos engagements perdus sont en toute sécurité sur
recovery-branch
.Facultatif: fusionner ou se remettre en cerise dans le principal:
Git Checkout Main Git Merge Recovery-Branch
Ou simplement saisir des fichiers spécifiques:
Git Checkout F4E5D6G - PATH / TO / LOST / FILE.TXT
? Récupérer un fichier supprimé
Même si vous avez supprimé un fichier et l'avoir engagé, vous pouvez le récupérer:
Trouvez un engagement où le fichier existait: utilisez
git log -- path/to/file.txt
pour localiser le dernier engagement avec le fichier.Ou utilisez le réflog si la suppression était récente: trouvez l'état
HEAD
avant la suppression du fichier, alors:Git Checkout Head @ {n} - path / to / file.txt
Remplacez
{n}
par le numéro de Reflog (commeHEAD@{2}
).Étape et commettez le fichier récupéré:
git add path / to / file.txt git commit -m "récupérer le fichier supprimé"
⚠️ Remarques importantes
- Reflog est local uniquement - il n'existe pas sur les références distantes. Alors agissez rapidement si vous avez besoin de récupérer quelque chose.
- Les entrées expirent après ~ 90 jours (configurable via
gc.reflogExpire
). - Si vous avez perdu un engagement qui n'est plus dans le réflog, essayez:
git fsck --find-fond
Cela trouve des engagements pendants, bien qu'ils soient plus difficiles à identifier.
Fondamentalement, si vous paniquez après une mauvaise réinitialisation ou un travail perdu - ne pousse pas de force ou ne supprimez pas le repo. Exécutez simplement
git reflog
. La plupart du temps, vos engagements sont toujours là, juste cachés.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.

Clothoff.io
Dissolvant de vêtements AI

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 !

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)

Il existe trois façons principales de définir des variables d'environnement dans PHP: 1. Configuration globale via Php.ini; 2. Passé via un serveur Web (tel que setenv d'Apache ou Fastcgi_param de Nginx); 3. Utilisez la fonction PUTENV () dans les scripts PHP. Parmi eux, PHP.ini convient aux configurations globales et modifiées, la configuration du serveur Web convient aux scénarios qui doivent être isolés et PUTENV () convient aux variables temporaires. Les stratégies de persistance incluent des fichiers de configuration (tels que PHP.ini ou la configuration du serveur Web), les fichiers .env sont chargés de bibliothèque Dotenv et l'injection dynamique de variables dans les processus CI / CD. Les informations sensibles à la gestion de la sécurité doivent être évitées à code dur et il est recommandé de l'utiliser.

Cet article a sélectionné plusieurs sites Web de projet "finis" Python et des portails de ressources d'apprentissage "Blockbuster" de haut niveau pour vous. Que vous recherchiez l'inspiration de développement, l'observation et l'apprentissage du code source au niveau de la maîtrise ou que vous amélioriez systématiquement vos capacités pratiques, ces plateformes ne sont pas manquées et peuvent vous aider à devenir un maître Python rapidement.

Le rôle principal de Homebrew dans la construction de l'environnement Mac est de simplifier l'installation et la gestion des logiciels. 1. Homebrew gère automatiquement les dépendances et encapsule les processus de compilation et d'installation complexes en commandes simples; 2. Fournit un écosystème de package logiciel unifié pour assurer la normalisation de l'emplacement et de la configuration de l'installation logicielle; 3. Intègre les fonctions de gestion des services et peut facilement démarrer et arrêter les services via BrewServices; 4. Mise à niveau et maintenance des logiciels pratiques et améliore la sécurité et les fonctionnalités du système.

Quels sont les points clés du catalogue? UselessCoin: Présentation et caractéristiques clés des principales caractéristiques des principales caractéristiques d'UselessCoin inutile (inutile) Perspectives futures: Qu'est-ce qui affecte le prix d'UselessCoin en 2025 et au-delà? Futumes Perspectives Core Fonctions et importances d'UselessCoin (inutile) Comment fonctionne UselessCoin (inutile) et quels sont ses avantages comment UselessCoin fonctionne

Cet article a sélectionné une série de sites Web de ressources de produits finis de haut niveau pour les développeurs et les apprenants VUE. Grâce à ces plateformes, vous pouvez parcourir, apprendre et même réutiliser des projets complets massifs de haute qualité en ligne gratuitement, améliorant ainsi rapidement vos compétences en développement et vos capacités de pratique de projet.

Pour permettre aux conteneurs PHP de prendre en charge la construction automatique, le noyau réside dans la configuration du processus d'intégration continue (CI). 1. Utilisez Dockerfile pour définir l'environnement PHP, y compris l'image de base, l'installation d'extension, la gestion de la dépendance et les paramètres d'autorisation; 2. Configurez des outils CI / CD tels que GitLabci et définissez les étapes de construction, de test et de déploiement via le fichier .gitlab-ci.yml pour réaliser une construction, un test et un déploiement automatique; 3. Intégrer des cadres de test tels que PHPUnit pour s'assurer que les tests sont automatiquement exécutés après les modifications du code; 4. Utiliser des stratégies de déploiement automatisées telles que Kubernetes pour définir la configuration de déploiement via le fichier de déploiement.yaml; 5. Optimiser Dockerfile et adopter une construction en plusieurs étapes

La forte récupération de Solana: la surtension des développeurs et de la conduite de carnaval de la pièce MEME peut-elle durer? Une interprétation approfondie des tendances Solana fait un retour! Après une période de silence, la chaîne publique a de nouveau rajeuni, le prix des pièces continue d'augmenter et la communauté du développement devient de plus en plus vivante. Mais où est la véritable force motrice de ce rebond? Est-ce juste un flash dans la casserole? Faisons des tendances centrales actuelles de Solana: écologie du développeur, fanatisme de la pièce de mèmes et expansion écologique globale. Derrière la forte augmentation des prix des pièces: les activités de développement réelles se sont récupérées récemment, les prix du SOL sont revenus au-dessus de 200 $ pour la première fois depuis juin, provoquant des discussions animées sur le marché. Ce n'est pas sans fondement - selon les données de Santiment, ses développeurs ont atteint un nouveau sommet au cours des deux derniers mois. ce

Pour résoudre le problème de l'incohérence entre l'environnement PHP et la production, le noyau consiste à utiliser les capacités de conteneurisation et d'orchestration de Kubernetes pour atteindre la cohérence environnementale. Les étapes spécifiques sont les suivantes: 1. Créez une image Docker unifiée, y compris toutes les versions PHP, extensions, dépendances et configurations de serveurs Web pour s'assurer que la même image est utilisée dans le développement et la production; 2. Utilisez la configmap de Kubernetes et le secret pour gérer les configurations non sensibles et sensibles, et obtenez une commutation flexible de différentes configurations d'environnement via des supports de volume ou une injection variable d'environnement; 3. Assurer la cohérence du comportement de l'application via des fichiers unifiés de définition de déploiement de Kubernetes (tels que le déploiement et le service) et inclure dans le contrôle de version; 4
