У меня есть изменения в моем рабочем каталоге, который я пытаюсь отбросить (reset к текущей индексированной версии файлов), однако git checkout -- <file>
не будет отменять изменения.
Я попытался вручную удалить файлы (rm -r files
), затем запустил git checkout -- .
, который отображает файлы как измененные снова.
$ git checkout -- .
$ git status
# On branch master
# 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: files/Hulk.png
# modified: files/Hulk_2.png
#
no changes added to commit (use "git add" and/or "git commit -a")
Запуск git diff
показывает, что файлы изменены...
diff --git a/files/Hulk.png b/files/Hulk.png
index 1c256cb..1d37fe0 100644
Binary files a/files/Hulk.png and b/files/Hulk.png differ
diff --git a/files/Hulk_2.png b/files/Hulk_2.png
index 1c256cb..0717199 100644
Binary files a/files/Hulk_2.png and b/files/Hulk_2.png differ
ПРИМЕЧАНИЕ. Некоторые люди сказали запустить git checkout .
, однако это приведет к такому же результату, что и git checkout -- .
. --
- это всего лишь обозначение, используемое в команде git checkout для различения точек treeish/commit из файлов/путей.
ОС: OSX 10.6 Git: 1.7.10.2