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.lognbproject/비 추적 파일 목록에 표시되지.

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


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 .gitignoreecho ".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.