수정 : Gitignore가 작동하지 않음



문제를 제거하기 위해 도구를 사용해보십시오

GitHub는 코드 협업 및 리포지토리 공유 분야에서 선도적 인 선구자로 부상했습니다. GitHub는 주로 사용자가 분산 버전 제어 및 SCM (소스 코드 관리)을 제어 할 수있는 버전 제어 소프트웨어입니다. 이 플랫폼은 전 세계의 주요 기업과 기업에서 사용됩니다.



.gitignore



이와 같은 플랫폼에는 기술과 문제가 있습니다. 코더가 경험 한 한 가지 특정 문제는 .gitignore가 GitHub에서 작동하지 않는다는 것입니다. 플랫폼은 .gitignore를 무시하거나 부분적으로 작동했습니다. 각 경우가 완전히 다른 시나리오이기 때문에 문제가 각 경우에 조금씩 다를 수 있다는 점은 흥미 롭습니다. 그러나 우리가 나열하는 솔루션에는 보편적으로 작동하는 수정 사항이 포함됩니다.



.gitignore는 무엇입니까?

Git (또는 GitHub)은 작업 디렉터리의 모든 파일을 확인합니다. 각 파일의 특징은 다음 세 가지 중 하나입니다.

  • 추적 됨 : 이러한 파일은 기록에서 이전에 커밋되거나 준비되었습니다.
  • 추적되지 않음 : 이전에 준비되거나 커밋되지 않은 파일입니다.
  • 무시 됨 : 사용자가 Git에게 완전히 무시하라고 지시 한 파일입니다.

이러한 무시 된 파일은 시나리오마다 다를 수 있으며 대부분 기계 생성 파일 또는 빌드 아티팩트입니다. 이것은 일반적인 관행입니다. 자신의 필요에 따라 다양한 다른 파일을 무시할 수 있습니다. 이러한 파일의 몇 가지 예는 다음과 같습니다.

  • 컴파일 된 코드 : 이러한 파일은 일반적으로 .class, .pyc, .ccp 등의 확장자를 사용합니다.
  • 숨겨진 시스템 파일 : 이러한 파일은 작업을 위해 시스템에서 사용되지만 일반보기에서 숨겨지는 파일입니다 (예 : DS_Store 또는 Thumbs.db 등).
  • 출력 디렉토리 빌드 : 이들은 대부분 / bin, / out 등의 디렉토리입니다.
  • 종속성 캐시 : 이러한 파일은 / node 또는 / packages 모듈의 내용 일 수 있습니다.
  • IDE 구성 파일 : 대부분 IDE 소프트웨어에서 생성하거나 관리하는 구성 파일입니다.
  • 런타임에 생성 된 파일 : 런타임에 파일을 생성하는 프로그램이 있습니다. 이러한 코드가 실행되면 런타임에 작업 폴더에 일부 파일이 생성 될 수 있으며 Git에서는 무시할 수 있습니다.

무시하려는 파일은 작업 저장소의 루트에서 주로 확인되는 .gitignore라는 특수 파일에서 추적됩니다. 주제에 대한 GitHub의 공식 문서에 따르면 특정 gitignore 명령이 없습니다. 대신 무시할 파일을 수동으로 편집해야합니다. .gitignore 파일에는 작업 저장소의 파일 이름과 일치하는 패턴이 포함되어 있으며 이러한 패턴은 특정 파일을 무시할지 여부를 결정하는 데 사용됩니다.



.gitignore가 작동하지 않는 원인은 무엇입니까?

.gitignore 기능은 완벽하게 작동 할 수 있지만 제대로 구성하지 않았을 수 있습니다. 모든 설문 조사에서 모듈이 실제로 작동하고 있다는 결론에 도달했습니다. 코더가이 기능을 사용할 수없는 이유는 대부분 파일을 올바르게 구성하지 않았거나 기본 코드에서 충족되지 않는 조건이 있기 때문입니다.

다음은 귀하에게 적합한 몇 가지 솔루션입니다. 각 솔루션은 귀하의 경우에 적용되지 않을 수 있으므로 초기 조건이 충족되지 않으면 다음 솔루션으로 전환하십시오.

해결 방법 1 : .gitignore 파일 확인

.gitignore 파일이 잘못된 형식으로 생성 된 흥미로운 사례가 나왔습니다. 이 특정 문제는 사용자가 Windows OS에서 메모장의 기본 응용 프로그램을 사용하여 파일을 만들 때 발생했습니다. 메모장은 ANSI 형식 대신 유니 코드로 파일을 작성합니다. 이 솔루션에서는 메모장의 변경 사항을 올바른 형식의 .gitignore로 저장하고 문제가 해결되는지 확인합니다.

노트 : 메모장을 사용하여 새 파일을 만들 때 파일에서 .txt 확장자를 제거해야합니다.

  1. 메모장에서 새 텍스트 문서에 코드를 작성하거나 변경 한 후 파일 그리고 선택 다른 이름으로 저장 .

다른 이름으로 저장 – 메모장

  1. 지금 앞에 부호화 , 고르다 ANSI . 이제 .txt의 파일 확장자를 제거하고‘ .gitignore ’. 올바른 디렉토리를 선택하고 저장하십시오.

인코딩 유형으로 ANSI 선택

  1. 이제 디렉토리로 이동하여 올바른 파일이 생성되었는지 확인하십시오. 이제 Git으로 다시 테스트하고 무시 기능이 예상대로 작동하는지 확인하십시오.

개발자는 Windows에서 기본 메모장을 사용하지 않아야합니다. 대신 적절한 '프로그래머'메모장을 사용해야합니다. 몇 가지 예는 다음과 같습니다. 메모장 ++ 등등. 그 안에서, 당신은 이와 같은 문제가 없을 것입니다.

노트 : 파일이 이미 UNICODE 형식으로 저장되어있는 경우 Git에서 파일을 올바르게 감지하려면 내용을 ANSI 형식으로 올바르게 저장해야합니다.

해결 방법 2 : 무시하려는 파일 확인

.gitignore가 작동하는 또 다른 조건은 파일이 아직 저장소의 일부 . 이것이 사실이라면 파일이 그대로 무시되지 않는 것처럼 이것은 매우 필수적인 측면입니다. 이미 추가 저장소에. Git은 .gitignore 파일에 이름이나 규칙을 넣어도 무시할 수 없습니다. 따라서 본질적으로 Git은 추적되지 않은 파일 .

구조 (저장소)를 살펴보고 현재 무시하려는 파일이 저장소에 추가되지 않았는지 확인해야합니다. 그렇다면 리포지토리에서 파일을 제거하고 최신 변경 사항이 커밋 된 후 .gitignore에 이름을 추가해야합니다 (파일 내용을 복사하고 삭제 한 후 다른 이름으로 복제 할 수도 있음). .

해결 방법 3 : 리포지토리에 파일 다시 추가

.gitignore에 이미 규칙을 추가했지만 무시할 파일이 이미 추가 된 경우 파일을 다시 추가 할 수 있습니다. 추가는 Git 색인에서 모든 항목을 제거한 다음 저장소에 다시 추가한다는 의미입니다. 파일을 처음부터 다시 추가 할 때 .gitignore에 추가 한 규칙이 기억되고 올바른 파일 만 추가됩니다.

노트 : 이 솔루션을 수행하기 전에 코드를 다른 곳에 백업해야합니다. 혹시라도 백업을하는 것이 항상 좋습니다.

  1. 다음 명령을 실행하십시오. 이것은 재귀적인 방식으로 git 인덱스에서 파일 경로를 언 스테이지하고 제거합니다.
git rm -r --cached.
  1. 이 작업이 실행 된 후 다음 명령을 실행해야합니다. 그러면 모든 파일이 다시 추가되고 .gitignore에 규칙이 있으므로 올바른 파일 만 업데이트됩니다.
git add.
  1. 이제 아래 코드를 사용하여 모든 파일을 색인에 다시 커밋합니다.
git commit -m '.gitignore is now working'

이제 파일을 검사하고 문제가 해결되었는지 확인하고 문제없이 .gitignore를 다시 사용할 수 있습니다.

4 분 읽기