내 .Net 솔루션에 많은 프로젝트가 있습니다. 모든 “bin / Debug”및 “bin / Release”폴더 (및 해당 내용)를 제외하고 싶지만 여전히 “bin”폴더 자체와 그 안에 포함 된 dll이 포함되어 있습니다.
“bin /”이있는 .gitignore는 “Debug”및 “Release”폴더와 “bin”폴더에 포함 된 모든 dll을 무시합니다.
gitgitore 파일의 “bin / Debug”또는 “bin / Release”는 무시 패턴을 “Solution / Project / bin / Debug”로 완전히 규정하지 않는 한 디렉토리를 제외하지 않습니다. 내 솔루션의 각 프로젝트에 대해이 전체 패턴을 포함하고 추가 된 새 프로젝트에 추가해야합니다.
어떤 제안?
답변
와일드 카드를 사용해 보셨습니까?
Solution/*/bin/Debug
Solution/*/bin/Release
git 버전 1.8.2에서는 **
와일드 카드를 사용하여 모든 수준의 하위 디렉토리와 일치 시킬 수도 있습니다 .
**/bin/Debug/
**/bin/Release/
답변
최상위 레벨에서 .gitignore를 사용하여 동일한 이름을 가진 프로젝트의 모든 디렉토리를 무시할 수 있습니다. 예를 들면 다음과 같습니다.
Debug/
Release/
git status 할 때 보이도록 즉시 업데이트해야합니다. 이 디렉토리가 git에 아직 추가되지 않았는지 확인하십시오. 무시하면 무시됩니다.
답변
질문은 모든 하위 디렉토리를 무시하는 것에 대해 묻지 않지만 어디서도 답을 찾을 수 없으므로 게시 할 것 */*
입니다.
답변
위의 모든 대답은 유효하지만 생각하지 않는 부분은 해당 디렉토리의 파일을 저장소에 추가하면 해당 파일이 포함 된 디렉토리 / 하위 디렉토리를 무시할 수 없다는 것입니다 (git은 해당 지시문을 무시합니다) ).
이미 추가 된 파일을 무시하려면
$ git rm --cached
그렇지 않으면 repo의 대상 디렉토리에서 모든 파일을 먼저 제거해야하며 해당 폴더를 무시할 수 있습니다.
답변
gitgitore 파일에 올바른 항목을 넣는 것 외에도 이미 repo에 추가 된 것을 무시하려는 경우 git rm -r /path/to/dir
dir을 .gitignore 파일에 추가하기 전에 수행해야 합니다. 그렇지 않으면 git이 무시할 유일한 것은 ignore 지시문입니다.
답변
내 컴퓨터 에서이 작업을 수행하는 유일한 방법은 다음과 같이하는 것입니다.
# Ignore all directories, and all sub-directories, and it's contents:
*/*
#Now ignore all files in the current directory
#(This fails to ignore files without a ".", for example
#'file.txt' works, but
#'file' doesn't):
/*.*
#Only Include these specific directories and subdirectories:
!wordpress/
!wordpress/*/
!wordpress/*/wp-content/
!wordpress/*/wp-content/themes/
포함하려는 각 수준에 대해 콘텐츠를 명시 적으로 허용해야하는 방법에 주목하십시오. 하위 테마가 5 개의 테마 아래에있는 경우에도 여전히이를 설명해야합니다.
이것은 @Yarin의 의견에서 온 것입니다 : https://stackoverflow.com/a/5250314/1696153
다음은 유용한 주제였습니다.
나는 또한 시도했다
*
*/*
**/**
과 **/wp-content/themes/**
또는 /wp-content/themes/**/*
그 중 어느 것도 나를 위해 일하지 않았습니다. 많은 흔적과 오류!
답변
컨텐츠 및 서브 디렉토리를 제외 시키려면 다음을 수행하십시오.
**/bin/*
모든 서브 디렉토리를 제외하고 컨텐츠를 가져 오려면 “/”를 추가하십시오.
**/bin/*/