gitgitore는 Git에 의해 무시된다


1511

.gitignoreGit에서 내 파일을 무시한 것 같습니다. .gitignore파일이 손상 되었을 수 있습니까? Git은 어떤 파일 형식, 로케일 또는 문화를 기대합니까?

내 .gitignore:

# This is a comment
debug.log
nbproject/

출력 git status:

# On branch master
# Your branch is ahead of 'origin/master' by 1 commit.
#
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#       debug.log
#       nbproject/
nothing added to commit but untracked files present (use "git add" to track)

내가 좋아하는 것 debug.log및 nbproject/비 추적 파일 목록에 표시되지.

이 문제를 해결하기 위해 어디에서 시작해야합니까?


56
.gitignore파일을 사용 ANSI하거나 UTF-8인코딩 해야합니다 . 와 같은 다른 것을 사용 Unicode BOM하면 Git이 파일을 읽을 수 없습니다.
— ADTC December

8
@ ADTC 이것은 내 컴퓨터 (Windows)의 문제였습니다. echo "file" > .gitignorePowerShell에서 사용 했는데 파일에 UCS-2 인코딩이있었습니다!
— MarioDS

7
git rm --cached debug.log nbproject/
— Gayan Weerakutti

4
여기에 첫 번째 코멘트가 답이 아닌 이유는 저 너머입니다
— RedOrav

2
@MattParkins 아아 나는 지금 그것을 본다. 아직도 그렇게 간단하고 포인트 답변이 주석으로 묻혀 있거나 실제로 받아 들여진 것이 거기에 있다는 것을 놀라게한다. 감사!
— RedOrav

답변:


3118

지금까지 파일을 추적하지 않더라도 Git은 파일을 추가 한 후에도 "알 수있는"것 같습니다 .gitignore.

경고 : 먼저 현재 변경 사항을 적용하지 않으면 변경 사항이 손실됩니다.

그런 다음 Git 저장소의 최상위 폴더에서 다음 명령을 실행하십시오.

git rm -r --cached .
git add .
git commit -m "fixed untracked files"

8
"git rm -r --cached"를 시도했을 때 "usage : git rm [options] [-] <file> ..."이 인쇄되었습니다. 중요한 경우 Windows 용 GitHub에서 "도구-> 여기에서 쉘 열기"를 클릭 한 후 PowerShell 내에서 Git을 사용하고 있습니다.
— Soonts

61
Windows의 경우 : git rm. -r --cached 및 git add.
— Beachhouse

90
전에 모든 변경 사항 을 커밋 해야합니다. 그렇지 않으면 변경된 모든 파일에 대한 제어 권한이 없어집니다 !!
— 코스 민

45
처음 3 명의 주석가는 결국 점을 놓친 것 같습니다. 이것은 모든 파일을 의미합니다. "git -rm -r --cached." <-점을 주목하십시오.
— Christophe De Troyer

18
커밋하지 않으려면 해결 방법은 변경 사항을 선반에 저장하는 것입니다 : "git stash". 위의 명령을 실행하십시오. "git stash pop"실행
— Ivan Voroshilin

335

Git이 .gitignore파일 변경 사항을 인식하지 못하는 것 같으면 다음 사항을 확인하십시오.

  • .gitignore로컬 파일을 방해 할 수있는 글로벌 파일 이있을 수 있습니다.
  • .gitignore 파일에 무언가를 추가 할 때 다음을 시도하십시오.

    git add [uncommitted changes you want to keep] && git commit
    git rm -r --cached .
    git add .
    git commit -m "fixed untracked files"
    
  • .gitignore 파일에서 무언가를 제거하고 위의 단계가 작동하지 않을 수 있습니다. 위의 단계가 작동하지 않는 경우 다음을 시도하십시오 .

    git add -f [files you want to track again]
    git commit -m "Refresh removing files from .gitignore file."
    
    // For example, if you want the .java type file to be tracked again,
    // The command should be:
    //     git add -f *.java
    

3
아마도 3 단계를 추가하기 위해 @AlinHuruba의 답변을 편집 할 수 있습니까?
— Benj

@Benj 귀하의 조언에 감사드립니다, 나는 AlinHuruba의 답변을 찾지 못했습니다. 차이가 무엇인지 모르므로 직접 알려주십시오.
— ifeegoo

2
3 단계는 내가 필요한 것입니다. 대부분의 답변은 우리가 추적 해제하려는 파일을 제거하는 방법을 알려줍니다. 반대의 견해에 감사드립니다.
— Yeung

이것이 당신에게 도움이되기를 바랍니다!
— ifeegoo

7
git rm -r --cached .나를 위해 일했다
— Jason

198

결정된. 좋아, Windows의 메모장에서 .gitignore 파일을 만들었고 작동하지 않았습니다. 리눅스에서 .gitignore 파일을 보았을 때 그것은 체계적인 횡설수설처럼 보였습니다. 아마도 메모장이 ASCII가 아니고 8 비트가 아닌 유니 코드를 작성했을 것입니다.

그래서 나는 리눅스 박스에 파일을 다시 썼고, 그것을 Windows로 다시 가져올 때 정상적으로 작동합니다! 만세!


77
메모장의 "다른 이름으로 저장"대화 상자에서 인코딩 "ANSI"를 선택하기 만하면됩니다. 또는 더 나은 아직, 적절한 텍스트 편집기를 얻으십시오-당신이 프로그래머라면 :) ... 나는 "프로그래머의 메모장"을 추천 할 수 있습니다. 다른 사람들은 메모장 ++을 선호하며 문자 그대로 수백 가지가 더 있습니다.
— 0xC0000022L

1
hehe, 그렇습니다, 나는 넷빈즈 (내가 당시에 사용했던), 일식 또는 비주얼 스튜디오에서 그것을 만들어야했을 것입니다. 나는 그것이 차이를 만들지 않을 것이라고 생각하면서 커맨드 라인에서 호출했습니다.
— 매트 파 킨스

8
내 문제는 비슷했다. 내 .gitignore는 BOM 과 함께 UTF8을 사용하고 있었다 . BOM없이 UTF8로 저장하면 마술처럼 작동하기 시작했습니다.
— Phil

13
이것은 나의 문제이기도했다. "echo dirName> .gitignore"를 사용하여 .gitignore 파일을 만들었습니다. Windows가 "."로 시작하는 파일을 만드는 데 어려움이 있기 때문입니다. 이 방법으로 생성 된 파일의 인코딩은 git에서 읽을 수 없으며 대신 이진 파일로 해석되었습니다. 메모장 ++에서 "인코딩-> UTF-8"을 클릭하고 저장했습니다.
— Laura

4
powershell의 @Laura와 동일한 문제가 발생했습니다. 파일은 기본적으로 UTF16으로 저장됩니다.
— mrówa

113

프로젝트에 다른 커밋을 추가하지 않으면 한 줄만으로도 .gitignore작업을 수행 하기에 충분 합니다.

git rm -r --cached debug.log nbproject

그러면 저장소에서 파일이 제거되지만 물리적으로 유지됩니다. 일반 영어로, 관련 변경 내역을 삭제하고 향후 커밋에서 변경 사항을 추적하지 않습니다. 여기서 더 나은 설명을 찾을 수 있습니다 .


1
내가 원하는대로 정확하게 작동했습니다-제대로 추적되지 않은 파일이 하나뿐이었습니다. 나는 그 내용을 메모장에 저장했고, 다음과 같이했다 : git rm -r --cached someFile.php그리고 그것은 매력처럼 작동했다 :)
— ShayLivyatan

@FMFF 저장소에서 제거하지만 물리적 인 상태로 일반 영어로 유지되며, 관련된 변경 기록을 삭제하고 향후 커밋에서 변경 사항을 추적하지 않습니다. 더 나은 설명은 다음과 같습니다. stackoverflow.com/questions/37279654/…
— H Aßdøµ

"치명적 : pathspec 'debug.log'는 어떤 파일과도 일치하지 않습니다"
— Michael

45

이 문제의 또 다른 원인은 명령문 앞의 공백이나 탭입니다.

예:

# Be aware of the following:
 notWorkingIgnore.*
workingIgnore.*

그리고 아래의 주석에서 지적했듯이 후행 공간도 문제가 될 수 있습니다.

# Be aware of the following:
notWorkingIgnore.* #<-Space
workingIgnore.*#<-Nospace

11
후행 공간은 내 문제 였고 찾기가 더 까다로 웠습니다.
— amr

3
또한 공백 문제가 발생했습니다.
— Trefex

3
예, 여기도 마찬가지입니다. 파일 패턴 다음에 주석을 작성할 수 있다고 생각했습니다 *.txt # Tex files. 그러나 git은 이해한다 : "확장자를 가진 파일을 무시하라 txt "
— Adam Libuša

3
내 말은,이 15 upvoted 답변을 찾기 위해 이틀이 걸렸습니다. 이것은 더 가치가 있습니다.
— 포드 카

2
당신은 방금 몇 달 동안 겪었던 문제를 해결했습니다 ... 감사합니다!
— Arkellys

36

.gitignore파일 인코딩이 영향을 미친다는 것을 알았 습니다. 파일이 유니 코드 인 경우 무시되고 ASCII 인 경우 무시되었습니다.

방법:

  1. 상태 확인 : PS> git status
  2. Get-FileEncoding에 대한 함수 만들기
  3. 테스트 .gitignore인코딩 :PS> Get-FileEncoding .gitignore
  4. 인코딩 을 ASCII로 변경하십시오 .PS> Set-Content .gitignore -Encoding Ascii -Value (Get-Content .gitignore)
  5. 확인 : PS> git status

5
1000 감사합니다. powershell을 통해 touch .gitignore및 echo ".db" >> .gitignoreroute를 사용하여 시스템에서 .gitignore 파일을 작성했습니다 . 나는이 발견 echo ".db" >> .gitignore"UCS-2 LE-BOM, ASCII에 대한 빠른 변환 작업을 시작 gitignore로 파일 인코딩을 설정했다.
— B-Rad

2
2 단계와 3 단계를 건너 뛰어보십시오.
— Aniket Bhansali

32

다른 솔루션과 마찬가지로 먼저 커밋하고 커밋 되지 않은 변경 사항 이 손실 될 수 있습니다 .

나는 이것으로 더 나은 결과를 얻었습니다.

git rm -r --cached .
git reset HEAD --hard
git status

상태에는 수정 된 파일이 없어야합니다.


2
이 사람은 나를 위해 작동하지 않습니다하지만 ifeegoo의 대답은하지 않습니다
— 엉덩이

21

제 경우에는 파일이 이미 리포지토리에 존재하고 무시하려고하기 때문입니다.

다음은 문제를 해결하기 위해 수행 한 작업입니다.

  • 파일을 임시 폴더로 복사
  • 내 프로젝트 폴더에서 제거하십시오.
  • 저장소에서 해당 파일을 제거하는 변경 사항을 커미트하십시오.
  • 해당 파일을 내 프로젝트 폴더에 다시 추가

그때까지 그 파일에 대한 변경 사항은 무시되었습니다.

저장소에 이미 존재하는 파일을 무시할 수 없다고 생각합니다.


제 경우에는 이미 준비되었습니다. 당신이 제안한 것을 한 후에, 그들이 준비되었고 제거되었다는 경고를 저지르고 보려고 시도한 후에야 나는 그것이 문제라는 것을 깨달았습니다.
— dudeNumber4

19

여기에있는 모든 대답은 실제로 해결 방법입니다. 실행 하기 전에 .gitignore 파일을 만들어야합니다 git init. 그렇지 않으면 git해당 파일이 이미 추적되었으므로 해당 파일을 무시할 필요가 없습니다.

echo .idea/ >> .gitignore
git init

매일 개발하는 경우 습관적으로 무시한 파일을 파일에 추가하는 것이 좋습니다 ~/.gitignore_global. 그렇게 git하면 이미 어떤 파일 (홈 디렉토리에있는 파일이므로 "사용자"를 의미 함)을 무시할 것입니다.


신에게 감사합니다 ... 마침내 나를 위해 일하는 해결책.
— Dbl

~/.gitignore_global구성 가능한 이름입니다. 실행 git config --global core.excludesfile이미 정의 된 파일이 있는지 확인하기 위해 먼저. 그렇지 않으면을 실행하십시오 git config --global core.excludesfile ~/.gitignore_global.
— 누 메논

.gitignore먼저 생성하지 않은 경우 해결 방법 : 추적 된 파일의 이름을 바꾸십시오. .gitignore새 것처럼 적용됩니다.
— 누 메논

15

또한 넣은 디렉토리를 확인하십시오 .gitignore.

프로젝트의 루트에 있어야합니다 .

./myproject/.gitignore

에 없습니다

./myproject/.git/.gitignore

9

특히 Windows 사용자의 경우 : 추적되지 않은 파일이 있고 캐시 된 파일을 지우거나 제거하면 작동하지 않습니다. PowerShell을 열고 .gitignore 파일을 UTF-8 인코딩으로 변환하십시오.

$Myfile = Get-Content .\.gitignore`
$Myfile | Out-File -Encoding "UTF8" .gitignore

해당 디렉토리의 .gitignore 파일을 인코딩하려면이 작업을 한 번만 수행하면됩니다. 파일은 나중에 파일을 편집 할 때마다 올바르게 인코딩되므로 작동합니다. 나는 이것이 GitHub가 .gitignore 파일에 대해 UTF-8이 아닌 인코딩을 읽으려고하지 않는 결함 때문이라고 생각합니다. 내가 아는 한이 문제는 Windows에서 아직 해결되지 않았습니다. 너무 큰 문제는 아니며 작동하지 않을 때 디버깅하기가 쉽지 않습니다.


8

.gitignore특히 Windows 사용자 의 경우 다른 문제 가 발생할 수 있습니다. Git은 .gitignore(와 같은 unity.gitignore) 이름을 지정할 때 마음에 들지 않습니다 .

.gitignoreWindows에서는 .gitignore.파일 이름없이 이름을 바꾸려고한다고 생각 하기 때문에 항상 이름을 지정 하거나 Windows에서 이름을 지정해야합니다.


7

방금이 문제에 부딪 쳤습니다. 내 .gitignore 파일의 내용은 추적되지 않은 파일 목록에 계속 나타납니다.

이것을 사용하여 무시 파일을 작성했습니다.

echo "node_modules" > .gitignore

큰 따옴표로 인해 문제가 발생했습니다. 무시 파일을 삭제 한 다음 따옴표없이 명령을 다시 사용했으며 예상대로 작동했습니다. 파일 인코딩을 망칠 필요가 없었습니다. Cmder 사용하는 Windows 10 컴퓨터에 있습니다.

예:

echo node_modules > .gitignore

이상하게도,이 echo 문은 실수로 삭제 한 다음 다시 만든 무시 된 파일이 커밋 가능하고 추적 할 수없는 파일로 표시되는 로컬 문제를 해결했습니다. 어떤 이유로 든 이것이 무시 파일을 변경하지 않더라도 문제가 해결되었습니다.
— Patrick

6

나에게 이전 답변 중 아무것도 효과가 없었습니다. .gitignore에있는 exclude.txt파일에 텍스트 를 복사해야 했습니다.

<Your-project-folder>\.git\info

완료되면 변경 사항을 새로 고치면 추적되지 않은 모든 파일이 사라집니다. 평소처럼 커밋하십시오.


6

내 문제는 OP가 제안한대로 손상된 .gitignore 파일이었습니다. 나는 그것이 믿어지지 않았고 다른 모든 것이 실패 할 때까지 가능성을 무시했습니다. 손상 은에 표시되지vi 않았지만 파일 시작 부분에 2 바이트가있어 .gitignore 파일이 무시되었습니다. 나에게 cat .gitignore이것은 입력 할 때만 나타 났습니다.

��# Built application files
*.apk
*.ap_

# ...

나는 이것이 어떻게 끝났는지 모르겠지만 파일을 다시 만들면 문제가 해결되었습니다. 손상된 파일의 16 진 분석 결과는 다음과 같습니다.

user@dev ~/project/myproject $ xxd -b .gitignore
00000000: 11111111 11111110 00100011 00000000 00100000 00000000  ..#. .
00000006: 01000010 00000000 01110101 00000000 01101001 00000000  B.u.i.

2
UTF-8 인코딩 파일의 UTF-16 바이트 순서 표시처럼 보입니다. en.wikipedia.org/wiki/Byte_order_mark
— jsageryd

6

이 줄이 포함 된 .gitignore 파일과 함께이 문제가 발생했습니다.

lib/ext/

사실이 디렉토리는 다른 곳의 폴더에 대한 심볼릭 링크라는 것을 깨달았습니다.

ls -la lib/ext/
lrwxr-xr-x 1 roipoussiere users 47 Feb  6 14:16 lib/ext -> /home/roipoussiere/real/path/to/the/lib

라인에 lib/ext/, 힘내 사실을 찾습니다 폴더 하지만 심볼릭 링크는입니다 파일 내, 그래서 lib폴더가 무시되지 않습니다.

나는 대체하여이 문제를 해결 lib/ext/하여 lib/ext내 .gitignore 파일에.


5

나는이 같은 문제가 있었다. 문제가 CR과 CR + LF의 불일치라고 생각합니다. CMD (Windows 7)와 다음 명령을 사용하여 .gitignore에 물건을 숨겼습니다.

나쁜:

echo "file_to_be_ignored.py" >> .gitignore<br>
echo "*~" >> .gitignore

기타.

문제는이 명령으로 Git이 줄 바꿈을 인식하도록 올바른 줄 끝 마커를 배치하지 않는다는 것입니다 (Git이 다른 줄을 기대할 때 CR 또는 CR + LF). Vim의 각 줄 바꿈을 수동으로 교체하여 문제를 해결했으며 (Vim to the rescue!) 완벽하게 작동했습니다.

메모장 ++ 또는 Vim (이상적으로)에서 .gitignore를 편집하십시오. 파일이 올바르게 포맷 된 것처럼 보이더라도 줄 바꿈을 바꾸십시오. 이상하게 들리지만, 그것은 나를 위해 일했습니다. :디



3

한 가지 고려해야 할 사항 : .gitignore 파일을 올바른 줄 끝으로 저장하고 있습니까?

윈도우 :

Windows에서 사용하는 경우 Windows 줄 끝으로 저장합니까? 모든 프로그램이 기본적으로이 작업을 수행하지는 않습니다. 메모장 ++과 많은 PHP 편집기는 기본적으로 Linux 줄 끝으로 설정되므로 파일은 서버와 호환됩니다. 이를 확인하는 쉬운 방법 중 하나는 Windows 메모장에서 파일을 여는 것입니다. 모든 것이 한 줄에 나타나면 파일은 Linux 줄 끝으로 저장됩니다.

리눅스 :

Linux 환경에서 파일 작업에 문제가있는 경우 Emacs 또는 nano 와 같은 편집기에서 파일을여십시오 . 인쇄 할 수없는 문자가 있으면 파일은 Windows 줄 끝으로 저장되었습니다.


3

또 다른 가능한 이유 – 동시에 실행되는 Git 클라이언트의 몇 인스턴스 . 예를 들어 "git shell"+ "GitHub Desktop"등


이것은 나에게 일어났다. "GitHub Desktop"을 기본 클라이언트로 사용하고 있으며 새로운 .gitignore 설정을 무시하고 있습니다 : 커밋 후 커밋 :

  1. 당신은 무언가를 저지 릅니다.
  2. 커밋 : .gitignore 설정을 무시합니다. 커밋에는 .gitignore에 언급 된 많은 임시 파일이 포함되어 있습니다.
  3. 힘내 캐시 지우기; .gitignore가 UTF-8인지 확인하십시오. 파일 제거 → 커밋 → 파일을 다시 이동; 하나의 커밋을 건너 뛰십시오. 도움이되지 않습니다.

이유 : Visual Studio Code 편집기가 동일한 열린 리포지토리와 함께 백그라운드에서 실행 중입니다. Visual Studio Code에는 Git 컨트롤이 내장되어있어 약간의 충돌이 발생합니다.

해결 방법 : 숨겨진 Git 클라이언트를 여러 번 다시 확인하고 특히 Git 캐시를 지우는 동안 한 번에 하나의 Git 클라이언트 만 사용하십시오.


3

이미 훌륭한 답변이 있지만 내 상황은 지루했습니다. Win10에 설치된 PLM (제품 라이프 사이클 관리) 소프트웨어의 소스를 편집 한 후 "이것을 git repo로 만들었을 것"이라고 결정했습니다.

따라서 캐시 옵션이 직접 작동하지 않습니다. 많은 초기 작업을 수행 한 후에도 소스 제어를 추가했을 수 있지만 다른 작업을 수행 .gitignore할 수는 없지만 많은 작업을 잃는 것이 무서울 수 있습니다 git rm --cached.

중요 : 이것은 git을 너무 늦어서 "프로젝트"에 너무 늦게 추가했기 때문에 내 .gitignore를 무시하는 것 같습니다. 난 절대 커밋하지 않았다. 나는 이것을 무시할 수 있습니다 :)

첫째, 나는 방금했다 :

rm -rf .git
rm -rf .gitignore

그런 다음 변경 사항을 사진으로 가져와야했습니다. 다시, 이것은 내가 변경 한 설치 제품입니다. 순수한 마스터 브랜치를 처음 커밋하기에는 너무 늦었습니다. 따라서 > changed.log다음 중 하나를 추가하여 프로그램을 설치 한 후 변경 한 목록이 필요했습니다 .

PowerShell

# Get files modified since date.
Get-ChildItem -Path path\to\installed\software\ -Recurse -File | Where-Object -FilterScript {($_.LastWriteTime -gt '2020-02-25')} | Select-Object FullName

세게 때리다

# Get files modified in the last 10 days...
find ./ -type f -mtime -10

이제 지난 10 일 동안 변경 한 사항에 대한 내 목록이 있습니다 (예, 본인은이 작업을 수행하는 것 외에는 모범 사례를 보지 않겠습니다).

새로 시작하려면 지금 :

git init .
# Create and edit .gitignore

변경된 목록을 git status개선 하는 대로 실행중인 .gitignore와 비교 해야했지만 .gitignore에서 편집 한 내용은 읽습니다.

마지막으로, 원하는 변경 사항 목록이 있습니다! 내 경우에는 상용구입니다-다른 개발자가 가져 와서 기여할 수있는이 소프트웨어에 대해 dev 시스템을 실행하는 데 관련된 sever xml 구성과 함께 일부 테마 작업이 있습니다. 커밋, 밀기, 그리고 마지막으로 새로운 작업을위한 브랜치!


2

다음 명령으로 이전에 Git에서 커밋 된 폴더 나 파일을 제거하십시오. 그런 다음 gitignore 파일에 올바른 파일이 반영됩니다.

    git rm -r -f "folder or files insides"

2

여기에 다른 답변으로 다루지 않는 까다로운 점은 다음과 같이 인라인 주석이 있으면 .gitignore 파일이 작동하지 않는다는 것입니다.

foo/bar # The bar file contains sensitive data so we don't want to make this public

따라서 이와 같은 주석이 있으면 다음과 같이 변경하십시오.

# The bar file contains sensitive data so we don't want to make this public
foo/bar

2

명령을 사용 하여 .gitignore파일 을 편집했을 수도 있습니다 sudo. 같은 문제가 발생하여 명령을 실행하는 동안 git status"무시해야합니다"파일을 계속 볼 수있었습니다.

nano .gitignore대신 편집 sudo nano .gitignore하여 올바른 반사를 볼 수있었습니다.


2

echo "..." > .gitignoreWindows 탐색기에서 PowerShell을 만들 수 없으므로 Windows의 PowerShell에서 .gitignore를 사용 했습니다.

필자의 경우 문제는 생성 된 파일의 인코딩이며 ANSI로 변경 한 후에 문제가 해결되었습니다.


2

나도 우분투에서 같은 문제 .gitignore가 있으며 터미널에서를 만들었고 나를 위해 일한다.

touch .gitignore


2

문자 그대로 .gitignore라는 텍스트 문서를 작성했기 때문에 광산이 작동하지 않았습니다.

대신 텍스트 문서를 만들고 메모장 ++에서 연 다음 .gitignore로 저장하십시오.

저장시 드롭 다운에서 모든 유형 (*. *)을 선택하십시오.


또는 gitbash에서 간단히 touch .gitignore


1

당신이 경우 메모장 ++ 사용자, 다음을 수행하십시오 :

메모장 ++를 사용하여 .gitignore 파일을 열고 다음을 수행하십시오.

메뉴 편집 → EOL 변환 → Windows 형식 → 저장 .

git status다시 사용 하고 그것이 효과가 있는지 확인하십시오.

비슷한 질문에 대한 답변을 여기에 게시했습니다 .


1

저에게는 또 다른 문제였습니다. 내 .gitignore 파일은 무시하지 말라고 말한 것을 제외한 모든 것을 무시하도록 설정되었습니다. 이와 같이 :

/*
!/content/

이제 이것은 분명히 Git에게 .gitignore 파일 자체를 무시하도록 지시하고 있음을 의미합니다. .gitignore 파일을 추적하지 않는 한 문제가되지 않았습니다. 그러나 어느 시점에서 나는 .gitignore 파일 자체를 커밋했습니다. 이로 인해 .gitignore 파일이 올바르게 무시되었습니다.

따라서 한 줄을 더 추가하면 문제가 해결되었습니다.

/*
!/content/
!.gitignore

1

내 문제는 슬래시 (/)가 아닌 따옴표 ( ")로 무시하기 위해 파일을 썼다는 것이다.

이것은 작동하지 않았으며 git에 의해 무시되었습니다.

"db.sqlite3"
"tdd_venv/"

이것은 잘 작동했습니다 :

/db.sqlite3
/tdd_venv/

메모장 ++로 Windows에서 파일 인코딩을 확인했습니다. 인코딩이 UTF-8로 설정되었습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.