Maison  >  Article  >  outils de développement  >  Comment supprimer les journaux dans Git

Comment supprimer les journaux dans Git

PHPz
PHPzoriginal
2023-04-03 09:17:332476parcourir

À mesure que le développement logiciel continue d’évoluer, le contrôle de version est une compétence essentielle. En tant qu'outil de contrôle de version le plus populaire à l'heure actuelle, Git est également l'un des outils que tout développeur doit connaître. À mesure que vous vous familiarisez avec les opérations Git, vous devenez de plus en plus sensible aux journaux dans Git. Pendant le développement, nous devons utiliser des journaux pour suivre l'historique des modifications de code, mais parfois, nous devons également supprimer certains enregistrements de journaux sensibles. Cet article explique comment supprimer le journal dans Git.

Qu'est-ce que le journal Git ?

Dans Git, log fait référence à la commande qui enregistre l'historique de chaque commit dans l'entrepôt. Chaque soumission aura un identifiant SHA-1, qui peut être utilisé pour interroger les informations correspondantes sur l'historique des soumissions. La commande log peut afficher l'historique d'une plage de validation spécifique.

Pourquoi devez-vous supprimer le journal dans Git ?

Normalement, il est important de conserver des enregistrements de l'historique des validations, car ils peuvent suivre l'historique des modifications de code. Mais parfois, les développeurs doivent également supprimer certaines informations sensibles pour protéger la sécurité du code. Par exemple, si nous exposons accidentellement des informations sensibles telles que des mots de passe et des clés lors de la soumission de code, nous devons supprimer ces informations pour éviter qu'elles ne soient utilisées par des utilisateurs malveillants. À l’heure actuelle, il est absolument nécessaire de supprimer les enregistrements du journal dans Git.

Comment supprimer le log dans Git ?

Dans Git, il existe deux façons de supprimer le journal, à savoir :

1. Supprimer le commit le plus récent

Dans certains cas, les développeurs n'ont besoin de supprimer que le commit le plus récent, par exemple lorsque des informations sensibles sont soumises. Vous pouvez utiliser la commande suivante :

git reset --hard HEAD~1

Cette commande supprimera le dernier commit (c'est-à-dire HEAD) et reviendra à la dernière version validée (c'est-à-dire HEAD~1).

Si vous souhaitez soumettre à nouveau le code et conserver l'historique de validation précédent, vous pouvez utiliser la commande suivante :

git push origin HEAD --force

Cette commande forcera la validation du code et écrasera l'historique dans l'entrepôt distant.

2. Supprimer plusieurs commits

Si vous souhaitez supprimer plusieurs commits, utilisez la commande :

git rebase -i commit_id

commit_id 代表你想要删除的 commit 版本的前一个 commit id。执行此命令后,会打开一个交互式的编辑器,将其中的 pick 修改为 edit dans cette commande, puis enregistrez et quittez.

Ensuite, exécutez la commande suivante :

git reset HEAD^

Cette commande restaurera git au commit précédent et ouvrira les modifications de ce commit dans l'espace de travail.

Après avoir terminé la réparation, exécutez la commande suivante :

git add .
git commit --amend
git rebase --continue

Cette commande soumettra les modifications au commit correspondant. Si des conflits sont rencontrés, les opérations de fusion correspondantes doivent être effectuées.

Résumé

Git est un outil de contrôle de version très puissant, et la commande log est également une compétence essentielle pour le développement. Lorsque nous devons supprimer des enregistrements de journal, nous pouvons utiliser la méthode mentionnée ci-dessus. Cependant, avant d’effectuer ces opérations, il convient de bien réfléchir pour éviter les risques inutiles. Étant donné que la suppression des enregistrements de validation détruira l'intégrité et la cohérence du code dans Git, cela peut entraîner de gros problèmes et de grandes pertes.

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