git add *.c
은 하위 디렉토리가 아닌 현재 디렉토리에서만 일치하는 파일을 추가합니다. 파일이 현재 디렉토리에서 검색된 패턴과 일치하지 않으면 git add *.c
이 하위 디렉토리에서 일치하는 파일을 추가하고있는 것으로 나타났습니다.git add - 현재 디렉토리에서 패턴이 일치하지 않으면 와일드 카드를 사용하여 파일을 추가하지 마십시오.
아무도이 동작을 피하는 방법을 알고 있습니까?
git add *.c
은 하위 디렉토리가 아닌 현재 디렉토리에서만 일치하는 파일을 추가합니다. 파일이 현재 디렉토리에서 검색된 패턴과 일치하지 않으면 git add *.c
이 하위 디렉토리에서 일치하는 파일을 추가하고있는 것으로 나타났습니다.git add - 현재 디렉토리에서 패턴이 일치하지 않으면 와일드 카드를 사용하여 파일을 추가하지 마십시오.
아무도이 동작을 피하는 방법을 알고 있습니까?
git add "/*.c"
이 트릭을 수행해야합니다.
슬래시는 Git에게 현재 폴더 만 볼 것을 지시합니다.
Git이 모든 종류의 비정상적인 동작을 일으키기 전에 항상 덩어리 패턴을 확장하려고 시도 할 수도 있습니다.
git이 와일드 카드를 처리 할 때 어떤 파일에서든 과 일치하는 것으로 가정하면입니다. 이 동작을 보는 이유는 셸이 현재 디렉터리에서 해당 와일드 카드가 일치하는 경우 명시적인 파일 목록으로 *.c
을 확장하기 때문입니다. 이 경우 Git은 와일드 카드가 아닌 .c
파일의 명시적인 목록을보고 있습니다.
현재 디렉토리의 파일이 해당 패턴과 일치하지 않기 때문에 셸이 *.c
으로 확장되지 않는 경우 와일드 카드 패턴은 확장 자체를 수행하고 하위 디렉토리에서 일치하는 Git으로 unexpanded가 전달됩니다. 당신이 떠들썩한 파티를 사용하는 경우
당신은 쉘이 오류가 발생하고 패턴이 일치하지 않는 경우 git add
을 실행하지 shopt -s failglob
를 와일드 카드가 비워 확장하거나 할 shopt -s nullglob
를 사용할 수 있습니다.