Является ли это "завершением опции", которую я использую для просмотра в bash (и если да, то почему мы его используем) или это нота Git для индекса или HEAD?
В "git checkout - files", что означает "-"?
Ответ 1
--
разделяет пути от других параметров. Из документа :
git checkout [-f|--ours|--theirs|-m|--conflict=<style>] [<tree-ish>] [--] <paths>...
Если эти обозначения не существовали, следующие две команды были бы двусмысленными:
git checkout <tree-ish> <path1> <path2>
git checkout <path1> <path2> <path3>
С обозначением --
ясно, что подразумевается:
git checkout <tree-ish> -- <path1> <path2>
git checkout -- <path1> <path2> <path3>
Документация, связанная с выше, включает example, когда вам может понадобиться:
$git checkout hello.c
Если у вас есть неудачная ветка с именем hello.c, этот шаг будет запутан как инструкция для перехода к этой ветке. Вы должны написать:
$git checkout - hello.c