Подтвердить что ты не робот

Git два дефиса означают без дополнительных параметров

Я изучаю try git by code school, и к модулю 1.17 Отмените его, используя командную строку

git checkout -- octocat.txt

а файл octocat.txt - это файл, и он объясняет, что две линии пунктирной линии

Это просто обещание командной строки, что больше нет параметров после '--'. Таким образом, если у вас есть ветвь с именем octocat.txt, он все равно вернет файл, вместо перехода на ветвь с тем же именем.

но я не могу понять, что это означает, что нет вариантов? И поскольку после этого нет параметров, почему он может различать его по файлу из ветки?

4b9b3361

Ответ 1

-- означает опции остановки обработки и даже если что-то похоже на вариант, например. --help, его следует рассматривать как обычный параметр, например, имя файла.

Используя этот синтаксис, вы можете фактически добавить или удалить файл, который называется say --help, что было бы невозможно в противном случае.

В синтаксисе git -- также обычно используется для указания затронутых файлов. Например, git checkout something может означать либо ветку проверки с именем something, либо файл с именем something. Если вы используете git checkout -- something, это всегда означает файл, а не ветвь.