HOWTO · Git
Git에서 추적되지 않은 파일 무시
이 기사에서는 Git 리포지토리에서 추적되지 않은 파일을 무시하는 데 사용할 수 있는 두 가지 방법에 대해 설명합니다.
이 문서에서는 Git 리포지토리에서 추적되지 않은 파일을 무시하는 데 사용할 수 있는 두 가지 방법에 대해 설명합니다. 로컬 리포지토리에 여러 개의 추적되지 않은 파일 및 폴더가 있는 경우 git status 명령을 실행하면 많은 행이 출력됩니다.
바로 뛰어들자.
Git에서 추적되지 않은 파일 무시
두 가지 다른 시나리오를 사용하여 두 가지 방법을 다룰 것입니다. 첫 번째 경우에는 Delftscopetech 저장소가 있습니다.
다음은 저장소에 있는 것입니다.
pc@JOHN MINGW64 ~/Documents/GitHub/Delftscopetech (main)
$ git status
On branch main
Your branch is up to date with 'origin/main'.
Changes to be committed:
(use "git restore --staged <file>..." to unstage)
new file: Delft.pdf
new file: sample.ph
Untracked files:
(use "git add <file>..." to include in what will be committed)
Example Code 2
Example Code 2.php
Example Code 3.php
Example code 1.php
downloadpdf.php
htmllinkpdf.html
insert.php
git status 명령은 커밋할 준비가 된 두 개의 파일과 여러 개의 추적되지 않은 파일을 보여줍니다. 추적되지 않은 파일을 삭제하지 않고 출력에서 제외하고 싶었습니다.
어떻게 해야 할까요?
git status 명령에 -uno 매개변수를 추가합니다. 그렇게 간단합니다. 저장소로 사용해 봅시다.
pc@JOHN MINGW64 ~/Documents/GitHub/Delftscopetech (main)
$ git status -uno
On branch main
Your branch is up to date with 'origin/main'.
Changes to be committed:
(use "git restore --staged <file>..." to unstage)
new file: Delft.pdf
new file: sample.php
Untracked files not listed (use -u option to show untracked files)
-uno 매개변수는 --untracked-files=no의 별칭입니다.
매개변수 없이 git status 명령을 실행하면 추적되지 않은 파일이 표시됩니다.
추적되지 않은 파일을 영구적으로 무시하려면 어떻게 해야 합니까? 어떻게 하죠?
아래 명령을 사용합니다.
git status --porcelain | grep '^??' | cut -c4- >> .gitignore
이렇게 하면 리포지토리에서 현재 추적되지 않은 파일이 영구적으로 숨겨집니다. 명령이 작동하려면 기존 .gitignore 파일이 있어야 합니다.
파일이 없으면 gitignore가 무시합니다. .gitignore 파일이 없는 경우 아래 명령을 사용하십시오.
echo "$(git status --porcelain | grep '^??' | cut -c4-)" > .gitignore
git status --porcelain 부분은 .gitignore 파일이 생성되기 전에 실행됩니다. 구문 분석하기 쉬운 형식으로 출력을 얻기 위해 git status --short 대신 git status --porcelain을 사용합니다.
grep '^??' 부분은 ??로 시작하는 모든 줄을 필터링합니다. 매뉴얼에 따르면 이 줄은 저장소의 추적되지 않은 파일에 해당합니다.
cut -c4- 부분은 모든 줄의 처음 세 문자를 제거하여 추적되지 않은 파일로 가는 길을 열어줍니다.