Computer >> 컴퓨터 >  >> 프로그램 작성 >> 프로그램 작성

Git으로 추적되지 않은 파일 제거하기

git clean 명령을 사용하여 추적되지 않은 파일을 제거할 수 있습니다. -fd 명령은 추적되지 않은 디렉토리를 제거하고 git clean -fx 명령은 무시되거나 무시되지 않은 파일을 제거합니다. .gitignore 파일을 사용하여 추적되지 않은 파일을 제거할 수 있습니다.

Git 리포지토리에는 추적된 파일과 추적되지 않은 파일의 두 가지 유형이 있습니다. Git 리포지토리에서 추적되지 않은 파일을 제거해야 하는 시나리오가 발생할 수 있습니다.

추적되지 않은 파일을 제거해야 합니까? 다음과 같은 경우 그렇게 해야 할 수 있습니다.

  • 사용하지 않는 파일로 어수선한 작업(로컬) 디렉토리
  • Git이 원하지 않는 폴더를 가리키도록 했습니다.
  • 다른 병합에서 남은 파일이 있거나 특정 파일을 제거하고 싶습니다.

Git이 추적되지 않은 파일을 제거했습니다.

다음 방법을 사용하여 Git 브랜치에서 추적되지 않은 파일을 처리할 수 있습니다.

  • 리포지토리의 파일과 디렉토리를 무시하는 .gitignore 파일
  • 추적되지 않은 파일과 추적된 파일을 제거하는 git clean -fx 명령
  • 추적되지 않은 파일과 디렉토리를 제거하는 git clean -fd 명령

이 가이드에서는 Git으로 추적되지 않는 파일을 제거하는 방법에 대해 설명합니다. 빠르게 시작할 수 있도록 몇 가지 예를 참조하겠습니다.

추적된 파일과 추적되지 않은 파일의 차이점

작업 또는 로컬 디렉토리에서 파일은 추적되거나 추적되지 않습니다. 추적됨 이는 이전 스냅샷에서 추가 및 커밋된 파일과 Git이 인식하고 변경 사항을 추적한다는 것을 의미합니다.

추적되지 않음 파일은 반대이며 해당 파일은 이전 커밋에 없었고 커밋되도록 준비되지 않았습니다. 준비하고 저장소에 커밋하거나 제거할 수 있습니다.

git status를 수행하면 파일을 수정/추가한 직후 추적되지 않은 파일과 추적된 파일의 목록을 보여줍니다.

참가자의 81%는 부트캠프에 참석한 후 기술 직업 전망에 대해 더 자신감을 느꼈다고 말했습니다. 지금 부트캠프에 참여하십시오.

부트캠프 졸업생은 부트캠프 시작부터 첫 직장을 찾는 데까지 6개월도 채 걸리지 않았습니다.

추적되지 않은 파일 제거 Git 옵션 1:.gitignore

첫 번째 옵션은 무시입니다. 그러한 파일. C++ 프로젝트에서 작업 중일 수 있습니다. 빌드 중에 원하지 않는 파일이 생성될 수 있습니다.

예를 들어, .env가 있을 수 있습니다. 모든 환경 변수와 데이터베이스, API, 액세스 키가 포함된 파일입니다. 당신은 그 정보를 야생에서 원하지 않을 것입니다. 맞습니까? 여기가 .gitignore입니다. 파일이 재생됩니다.

.gitignore에 있는 모든 파일 파일은 추적되지 않은/추적된 Git 흐름의 일부가 아닙니다. 제거됩니다. 이것으로부터. 따라서 Git은 이를 무시하고 추적하지 않으며 추적되지 않는다고 불평합니다.

먼저 .gitignore를 생성해 보겠습니다. 루트에 있는 파일. 그런 다음 위치의 상대 경로를 지정합니다. 따라서 node_modules 및 config.env 파일을 숨기려면 다음과 같이 추가하면 됩니다.

node_modules
config.env

프로젝트가 성장함에 따라 Gitignore를 이해하는 것이 필수적이므로 어떤 폴더나 파일을 추가해야 하는지 알고 있어야 합니다. 이는 Git 워크플로에서 추적되지 않은 상태로 실수로 스테이징하고 모든 사람이 키가 노출된 것을 볼 수 있도록 Git이 이러한 민감한 파일을 추적하도록 하는 것을 원하지 않기 때문입니다.

프로젝트가 성장함에 따라 Gitignore를 이해하는 것이 필수적이므로 어떤 폴더나 파일을 추가해야 하는지 알고 있어야 합니다. 이는 Git 워크플로에서 추적되지 않은 상태로 실수로 스테이징하는 것을 원하지 않기 때문입니다. 이렇게 하면 Git이 저장소에서 공유해서는 안 되는 정보가 있는 파일을 추적하기 시작합니다.

추적되지 않은 파일 제거 Git 옵션 2:git clean

파일을 제거해야 하는 다음 옵션은 git clean을 사용하는 것입니다. 명령. git clean 명령은 저장소에서 추적되지 않은 파일을 삭제합니다.

git clean 명령은 작업 트리 내부의 현재 작업 디렉터리에서 시작합니다. 작업 트리는 보고 있는 분기입니다.

이 명령은 예를 들어 실수로 고등학교 사진이 있는 폴더를 다른 폴더 대신 저장소에 추가한 경우에 유용합니다.

Git clean에는 몇 가지 옵션이 있습니다. 이 명령의 구문을 살펴보겠습니다.

git clean [-d] [-f] [-i] [-n] [-q] [-e <pattern>] [-x | -X] [--] <path>…​

이 시점에서 Git clean은 하드 시스템 방식으로 파일을 삭제한다는 점을 언급할 가치가 있습니다. . 즉, 변경 사항을 취소할 수 없습니다. rm과 유사합니다. 터미널에서 명령. 그러나 파일이 이전 커밋에서 추적된 경우 이전 버전을 찾을 수 있습니다.

git clean -d -n

경로를 지정하지 않으면 종종 -d Git이 추적되지 않은 디렉토리를 조사하도록 하는 옵션입니다.

-n 테스트 실행 옵션을 포함해야 합니다. 첫 번째. 이것은 Git이 삭제하기 전에 제거될 항목을 경고하도록 지시합니다. 다시 말해, -n 플래그는 clean 함수의 테스트 실행을 수행합니다. 그런 다음 변경 사항이 확인되면 git clean을 실행할 수 있습니다.

이 옵션을 사용하면 제거할 준비가 되지 않았거나 제거하고 싶지 않은 파일을 제거하는 것을 방지할 수 있습니다. 다음은 git clean -d -n으로 끝나는 방법입니다. 명령.

이를 실제로 살펴보겠습니다. 우리는 추적하고 싶지 않고 제거하고 싶은 어리석은Picture.jpg가 있습니다. 어떤 일이 일어날지 확인하세요:

Git으로 추적되지 않은 파일 제거하기

git clean -f

Git이 제대로 작동하도록 하려면 강제 옵션을 지정해야 할 수도 있습니다. . 이 옵션은 저장소에서 선택한 파일을 제거하려는 경우에만 사용해야 합니다.

git clean -f 를 사용하여 어리석은 Picture.jpg를 제거해 보겠습니다. 또는 git clean -f squeezePicture.jpg를 사용하여 보다 구체적으로 지정할 수 있습니다.

Git으로 추적되지 않은 파일 제거하기

여기에서 git status가 처음에 추적되지 않은 파일이 있음을 지적한 다음 -f를 사용하여 삭제했음을 알 수 있습니다. 옵션 파일이 사라졌습니다. 쉿 피니!

-f 옵션 및 Git clean은 매우 강력하므로 무시된 파일에서는 작동하지 않습니다. 이는 Git이 인식하고 버전 관리 시스템의 일부인 파일에서만 작동하기 때문입니다.

git clean -x

자신이 무엇을 하고 있는지 잘 알지 못하는 경우에는 권장하지 않습니다. 무시된 파일과 디렉토리를 제거할 수 있습니다. 이렇게 하려면 -x를 사용하세요. 옵션. 그래서 git clean -d -x -f 눈 깜짝할 사이에 그렇게 할 것입니다. 하지만 아직 사용하지 마세요.

git clean -d -i

초보자에게 추천합니다. 시작할 때 전달하는 옵션에 주의해야 할 수도 있습니다. 우리는 이미 테스트 실행 -n을 보여주었습니다. 옵션. -i도 있습니다. 함께 플레이할 수 있는 대화형 인터페이스를 보여주는 옵션입니다!

Git으로 추적되지 않은 파일 제거하기

결론

.gitignore 또는 git clean 명령을 사용하여 저장소에서 추적되지 않은 파일을 제거할 수 있습니다. git clean 명령은 파일을 재귀적으로 제거합니다. 이 명령은 현재 작업 디렉토리에서 시작됩니다.

Git에 대해 자세히 알아보려면 Git 학습 방법 가이드를 읽어보세요.