В чем разница между `git reset file` и` git reset HEAD file`?

9

Я считаю, что оба из них могут разархивировать файл.

Я использовал git reset fileдля удаления файла.

Но сегодня я читаю http://git-scm.com/book .

Я считаю, что это научило меня использовать git reset HEAD file, что делает ГОЛОВКА здесь? При каких обстоятельствах это необходимо?

PS: дополнительный вопрос, я могу использовать git checkout fileдля неизменения файла. Между тем эту книгу предлагают мне использовать git checkout -- file. Какая здесь разница?

Zen
источник

Ответы:

9

Там нет разницы. HEADсовершенно необязательно. HEADобычно указывает на последний коммит текущей ветви. Если вы не используете его, это подразумевается. Это имеет смысл, только если вы хотите сбросить файл, основываясь на какой-то другой ветке или коммите и т. Д. Другими словами, имеет смысл использовать что-то еще, кроме HEAD.

git checkoutс --безопаснее. Понятно, что все, что следует, --является путем, а не коммитом или тегом, например.

Мирослав Франк
источник