중복 가능성:
"--"(이중 대시)은(는) 무슨 뜻인가요?
git diff [options] [<commit>] [--] [<path>…]
여기서 [--]의 의미를 어떻게 이해해야 할까요? 그리고 언제 사용해야 할까요?
답변1
일반적으로 --
옵션의 끝을 나타내기 위해 명령에 사용됩니다. 이는 파일 이름이 "-"로 시작하거나 입력 내용을 알 수 없는 경우에 유용합니다. 다음은 그 사용 예입니다:
git diff --stat -- --file1 --file2
--file1
다른 옵션이 아닌 파일 이름으로 처리됩니다.
답변2
항상 그렇듯이 명령의 맨페이지를 읽어 명령이 인수를 해석하는 방법을 이해해야 합니다.
--
일반적으로 명령 옵션의 끝을 나타내는 데 사용됩니다. -
. 또는 기타 매개변수로 시작하는 파일 이름을 전달하려는 경우 특히 유용합니다. 하이픈으로 시작하는 파일 이름으로 확장될 수 있는 와일드카드 앞에 이를 사용하는 것도 좋은 생각입니다. (예를 들어 이것을 시도해 보십시오 mkdir foo; cd foo; echo >-l; ls *; ls -- *
.)
그러나 git diff
인수가 a <commit>
(비교할 개정을 나타냄)인지 a <path>
(비교할 파일을 나타냄)인지 여부를 나타내는 데에도 사용됩니다. 일반적으로 추측할 수 있지만 값이 유효한 커밋이자 유효한 경로일 수 있습니다. 이 경우 를 사용하여 git diff foo --
이것이 foo
커밋임을 나타내거나 경로임을 git diff -- foo
나타낼 수 있습니다.foo