노트:
또한 qwertymk 의 답변 에서 언급했듯이 git check-ignore -v
적어도 Unix에서 명령 을 사용할 수도 있습니다 ( CMD Windows 세션 에서는 작동하지 않습니다 )
git check-ignore *
git check-ignore -v *
두 번째 규칙은 실제 규칙을 표시 .gitignore
하므로 git repo에서 파일을 무시합니다.
유닉스에서 " 현재 디렉토리의 모든 파일을 재귀 적으로 확장합니까? "및 bash4 +를 사용하는 경우 :
git check-ignore **/*
(또는 find -exec
명령)
참고 : https://stackoverflow.com/users/351947/Rafi B. 는 의견 에서 (위험한) globstar 를 피할 것을 제안 합니다 .
git check-ignore -v $(find . -type f -print)
.git/
그래도 하위 폴더 에서 파일을 제외해야합니다 .
원래 답변 42009)
git ls-files -i
소스 코드가 나타내는 것을 제외하고는 작동해야합니다 .
if (show_ignored && !exc_given) {
fprintf(stderr, "%s: --ignored needs some exclude pattern\n",
argv[0]);
exc_given
?
-i
실제로 아무것도 나열 하려면 다음에 하나 이상의 매개 변수가 필요합니다 .
시험:
git ls-files -i --exclude-from=[Path_To_Your_Global].gitignore
(그러나 캐시 된 (무시) 객체 만 필터와 함께 나열 하므로 원하는 것은 아닙니다.)
예:
$ cat .git/ignore
# ignore objects and archives, anywhere in the tree.
*.[oa]
$ cat Documentation/.gitignore
# ignore generated html files,
*.html
# except foo.html which is maintained by hand
!foo.html
$ git ls-files --ignored \
--exclude='Documentation/*.[0-9]' \
--exclude-from=.git/ignore \
--exclude-per-directory=.gitignore
실제로 'gitignore'파일 ( 'exclude')에서 도움이 될 수있는 명령 줄이 있습니다.
F:\prog\git\test\.git\info>type exclude
# git ls-files --others --exclude-from=.git/info/exclude
# Lines that start with '#' are comments.
# For a project mostly in C, the following would be a good set of
# exclude patterns (uncomment them if you want to use them):
# *.[oa]
# *~
그래서....
git ls-files --others --ignored --exclude-from=.git/info/exclude
git ls-files -o -i --exclude-from=.git/info/exclude
git ls-files --others --ignored --exclude-standard
git ls-files -o -i --exclude-standard
트릭을해야합니다.
에서 언급 한 바와 같이 LS-파일 man 페이지 , --others
캐시되지 않은, 비 최선을 다하고, 정상 무시 파일을 보여주기 위해, 중요한 부분입니다.
--exclude_standard
바로 가기 일뿐 아니라 모든 표준 "무시 된 패턴"설정 을 포함하는 방법 입니다.
exclude-standard
: 표준 자식 제외를 추가 .git/info/exclude
, .gitignore
각 디렉토리에, 그리고 user's global exclusion file
.