Comment puis-je annuler toutes les modifications apportées à mon répertoire après le dernier commit, y compris la suppression des fichiers ajoutés, la réinitialisation des fichiers modifiés et l'ajout de fichiers supprimés?
git
git-commit
git-reset
git-revert
Dogbert
la source
la source
Réponses:
Réinitialisez d'abord les modifications
puis nettoyez tout ce qui n'est pas suivi. Si vous souhaitez conserver les fichiers qui ne sont pas suivis en raison de
.gitignore
, soyez prudent avec cette commande.la source
-x
optiongit clean
aussi, ce qui lui demande de supprimer également les fichiers ignorés.git clean -fd
commande.git clean -fd
qui ne supprimera pas les fichiers ignorés.-x
volonté.git clean -fd
supprimera ces dossiers et fichiers non suivis. Testé avec git version 1.9.1Vous pouvez annuler les modifications apportées aux fichiers suivis avec:
Vous pouvez supprimer des fichiers non suivis avec:
Vous pouvez supprimer les fichiers et répertoires non suivis avec:
mais vous ne pouvez pas annuler la modification des fichiers non suivis .
Vous pouvez supprimer les fichiers et répertoires ignorés et non suivis
mais vous ne pouvez pas annuler la modification des fichiers ignorés .
Vous pouvez également définir
clean.requireForce
àfalse
:pour éviter d'utiliser
-f
(--force
) lorsque vous utilisezgit clean
.la source
Il y a deux commandes qui fonctionneront dans cette situation,
root> git reset --hard HEAD ~ 1
root> git push -f
Pour plus de commandes git, reportez-vous à cette page
la source
git push -f
n'est pas lié à la question et, dans ce scénario, est dangereux