2017-10-19 5 views
0

Je veux réinitialiser le dépôt Git à partir d'un autre commit (dans mon répertoire de travail, j'ai seulement les fichiers de ce commit et les versions de ce commit), mais je ne ne veulent pas déplacer HEAD de la branche (ce qui serait fait par git reset), laisser tout l'historique de commit intact.Comment réinitialiser le dépôt Git à l'ancien état sans déplacer le HEAD

Quelle est la façon de faire cela?

+0

Je ne sais pas si git peut le faire. Vous pouvez utiliser git diff pour créer un fichier patch, puis l'appliquer normalement, sans utiliser git. –

Répondre

2

AVERTISSEMENT DE SUPPRIMER DES FICHIERS Untracked ET JETER TOUS LES CHANGEMENTS mais c'est ce que vous avez demandé:

ont dans mon répertoire de travail que les fichiers de ce commettras

Supprimer les fichiers chenillés (ne pas oublier le git en face de cela, rm -rf . est assez différent):

git rm -rf . 

Supprimer les fichiers non suivis, y compris les ignorés:

git clean -fdx 

(Il n'y a que .git maintenant)

Vérifiez les fichiers de la révision que vous voulez sans vérifier la révision elle-même:

git checkout some-other-commit -- .