Je suis nouveau dans l'environnement Git et j'utilise BitBucket avec SourceTree sur Mac. Tout ce que je veux faire maintenant, c'est ignorer les modifications depuis le dernier commit. Comment dois-je faire cela? Je n'ai rien trouvé de tel que "changements de rejet", et tirer directement du dernier commit ne semble pas fonctionner. Les solutions effectuées avec l'interface graphique ou en ligne de commande seront bonnes. Je vous remercie.
J'aime utiliser
git stash
Ceci stocke toutes les modifications non validées dans le stash . Si vous souhaitez ignorer ces modifications ultérieurement, simplement git stash drop
(ou git stash pop
pour les restaurer).
Bien que ce ne soit techniquement pas la manière "appropriée" de rejeter les modifications (comme d'autres réponses et commentaires l'ont souligné).
Sur SourceTree pour Mac, cliquez avec le bouton droit de la souris sur les fichiers que vous souhaitez supprimer (dans les fichiers de l’arborescence de travail liste), et choisissez Reset .
Sur SourceTree pour Windows, cliquez avec le bouton droit de la souris sur les fichiers à supprimer (dans Modifications de la copie de travail ) et choisissez Supprimer .
Sur git, vous feriez simplement:
git reset --hard
pour ignorer les modifications apportées aux fichiers versionnés;
git clean -xdf
pour effacer les nouveaux fichiers ( non suivis ), y compris les fichiers ignorés (l'option x
). d
consiste également à supprimer les répertoires non suivis et f
à forcer.
Sur le fichier non mis en scène, cliquez sur les trois points à droite. Une fois que vous avez cliqué dessus, un menu contextuel apparaîtra dans lequel vous pouvez ensuite Discard file
.
Ok, je viens de remarquer que le titre de la question répond déjà à ma question.
Pour décompresser des fichiers, utilisez
git reset HEAD /file/name
Et pour annuler les modifications apportées à un fichier
git checkout -- /file/name
Si vous avez un lot de fichiers dans un dossier, vous pouvez annuler tout le dossier.
git checkout -- /folder/name
Notez que toutes ces commandes sont déjà affichées lorsque vous git status
Ici, j'ai créé un repo factice et énuméré les 3 possibilités.
# On branch master
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# modified: test
#
# Changes not staged for commit:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# modified: test2
#
# Untracked files:
# (use "git add <file>..." to include in what will be committed)
#
# test3
À partir de l’interface graphique, cliquez sur le répertoire de travail, cliquez avec le bouton droit de la souris sur le ou les fichiers que vous souhaitez supprimer, puis cliquez sur Supprimer.