web-dev-qa-db-fra.com

Comment supprimer les validations de git sur Github et Bitbucket

J'ai accidentellement poussé des fichiers de mon répertoire .idea dans mon projet Django que j'avais dans mon fichier .gitignore. J'essaie de supprimer complètement la validation de mon dépôt bitbucket car il y a quelqu'un d'autre Im travailler avec sur le projet et il ne peut pas tirer mes modifications sans affecter ses propres fichiers .idea. J'ai vu d'autres SO questions où ils disent d'utiliser git revert, mais je me souviens qu'il y en avait un autre où vous avez poussé le dernier bon commit que vous avez fait, et tout ce qui a été supprimé de la branche principale

Historique des engagements:

94ca48e

55fab05

3813803

Je veux supprimer 94ca48e et 55fab05. Il y avait une commande que j'ai trouvée une fois où vous pouviez faire de 3813803 la validation la plus récente, et tout dans le référentiel distant après cette validation serait supprimé, mais je ne la trouve nulle part.

15
JBT

Utilisation git reset --hard 3813803. Cela ne peut pas être annulé et fonctionne localement et à distance.

Pour Push à distance à l'aide de git Push --force Origin master

Jetez un œil au git docu d'Atlassian ici .

Permettez-moi également de citer à partir de là:

Alors que la restauration est conçue pour annuler en toute sécurité une validation publique, git reset est conçu pour annuler les modifications locales. En raison de leurs objectifs distincts, les deux commandes sont implémentées différemment: la réinitialisation supprime complètement un ensemble de modifications, tandis que la restauration conserve l'ensemble de modifications d'origine et utilise un nouveau commit pour appliquer l'annulation.

git reset est celui à utiliser ici, car vous demandez une suppression complète.

27
harmonica141