비슷한 질문 ( 1 , 2 및 3 )을 보았지만 적절한 해결책을 얻지 못했습니다.
특정 파일 형식을 제외하고 특정 폴더 아래의 모든 파일을 무시해야합니다. 폴더는 루트 경로의 하위 디렉토리입니다. 폴더 이름을 지정하겠습니다 Resources. 나는 일을 복잡하게하고 싶지 않기 때문에, 이름이 Resources있는 모든 폴더 아래의 파일을 무시하겠습니다 .
이것은 모든 중복 질문에서 가장 일반적인 솔루션입니다.
# Ignore everything
*
# Don't ignore directories, so we can recurse into them
!*/
# Don't ignore .gitignore
!.gitignore
# Now exclude our type
!*.foo
이 솔루션의 문제점은 새로 추가 된 파일의 추적을 중지 한다는 것입니다 ( *모든 파일을 무시 하므로 ). 모든 파일 형식을 계속 제외하고 싶지는 않습니다. 새 파일이 추가되면 git status표시 되는 정상적인 동작을 원합니다 .
마침내 여기 에 해결책이 생겼습니다 . 해결책은 폴더 에 다른 .gitignore파일 을 추가하는 것 Resources입니다. 이것은 올바르게 작동합니다.
하나의 무시 파일로 동일한 결과를 얻을 수 있습니까? 나는 다른 디렉토리에 많은 무시 파일이 약간 어색하다는 것을 알았습니다.
이것이 내가 달성하려는 것입니다.
# Ignore everything under Resources folder, not elsewhere
Resources
# Don't ignore directories, so we can recurse into them
!*Resources/
# Now exclude our type
!*.foo
그러나 이것은 반대 출력을 제공합니다. *.foo유형을 무시 하고 다른 파일을 추적합니다.
DirectoryName1/** DirectoryName1/**/*각각에 대해 수행했습니다. Firs는 디렉토리를 제거하지만 모든 파일 유형을 제거하려면 두 번째가 필요합니다.