Computer >> 컴퓨터 >  >> 프로그래밍 >> 프로그래밍

git rm 마스터하기:리포지토리에서 파일 제거를 위한 완벽한 가이드

git rm 명령은 Git 저장소에서 파일을 제거합니다. 이 명령은 파일 시스템에서 파일을 제거한 다음 Git 저장소에서 추적하는 파일 목록에서도 제거합니다. –cached 플래그를 사용하면 파일 시스템에서 파일을 삭제하지 않고도 Git 저장소에서 파일을 삭제할 수 있습니다.

Git 저장소에서 파일을 어떻게 제거합니까? 좋은 질문입니다. 파일이 영원히 저장소의 일부가 되기를 원하는 경우가 항상 있는 것은 아닙니다. 파일이 더 이상 프로젝트에 필요하지 않다고 판단하여 Git 저장소에서 해당 파일을 제거하고 싶을 수도 있습니다.

Git 저장소에서 파일을 제거하려면 git rm 명령을 사용할 수 있습니다. git add 명령과 반대입니다. 파일을 제거합니다.

이 가이드에서는 git rm 명령을 사용하는 방법에 대해 설명합니다. 어떻게 작동하는지 보여주기 위해 git rm 명령의 예를 살펴보겠습니다. 시작해 보세요!

Git에서 파일을 관리하는 방법

git rm 명령 사용 방법을 논의하기 전에 Git 버전 제어 시스템에서 파일이 관리되는 방식을 이해해야 합니다.

Git 저장소 내부의 파일은 추적되거나 추적되지 않을 수 있습니다.

추적된 파일은 git 커밋에 포함된 파일입니다. 추적되지 않은 파일은 아직 저장소에 커밋되지 않은 파일입니다. 일반적으로 추적되지 않는 파일은 커밋을 생성하기 전에 생성한 파일입니다.

Git 커밋에 파일을 추가하려면 git add 명령을 사용할 수 있습니다. 그러면 추적된 파일이 됩니다. 파일 추적을 중지하려면 git rm 명령을 사용하면 됩니다.

git rm 명령은 Git 저장소에서 파일 또는 파일 그룹을 제거합니다. 컴퓨터와 Git 저장소 모두에서 파일이 제거됩니다. 로컬 컴퓨터에 파일을 보존하려면 –cached 플래그를 사용하세요.

플래그가 없으면 이 명령은 Git 저장소와 로컬 작업 디렉터리 모두에서 파일을 제거합니다. 이는 Linux rm 명령이 컴퓨터에서 파일을 삭제하는 것과 마찬가지로 파일을 삭제한다는 의미입니다.

이 명령의 가장 간단한 사용법은 파일을 제거하는 것입니다. Git 저장소에서 settings.json이라는 파일을 제거해 보겠습니다.

이 명령은 저장소의 추적 영역에서 settings.json을 제거합니다. 이 동일한 명령을 사용하여 여러 파일을 제거할 수 있습니다. 이렇게 하려면 제거하려는 파일이나 폴더의 이름을 공백으로 구분하세요.

git rm settings.json .env

그러면 저장소에서 settings.json 및 .env 파일이 제거됩니다.

기본적으로 Git은 경로를 언스테이징하고 제거하기 위해 rm 명령을 실행할 때 안전 검사를 수행합니다. 이렇게 하면 현재 분기의 파일이 준비 인덱스의 파일과 동일한지 확인됩니다. -f 또는 –force 플래그를 사용하여 이 동작을 무시할 수 있습니다:

파일을 제거하려는 것이 확실할 경우에만 -f 플래그를 사용해야 합니다. 그렇지 않으면 나중에 병합 충돌이 발생할 수 있습니다. 이런 일이 발생하면 병합 충돌을 해결하는 방법에 대한 가이드를 사용하여 도움을 받을 수 있습니다.

Git rm –캐시됨

Git rm –cached 플래그는 준비 영역에서 파일을 제거합니다. 작업 디렉터리의 파일은 그대로 유지됩니다. 이는 여전히 로컬에 파일 사본이 있다는 것을 의미합니다. 해당 파일은 Git 프로젝트를 추적하는 색인에서 제거됩니다.

settings.json 작업 트리 파일을 저장소에서 제거하되 프로젝트 디렉터리에 보관해 보겠습니다.

git rm --cached settings.json

다음 커밋을 푸시하면 settings.json 파일이 제거됩니다.

파일이 로컬 작업 디렉터리에 존재하는 한 해당 파일을 Git 저장소에 다시 추가할 수 있습니다. git add 명령을 사용하면 됩니다. git add 명령에 대한 튜토리얼에서 git add에 대해 자세히 알아보세요.

git rm 명령 실행 취소 방법

git rm 명령은 커밋이 이루어질 때까지 스테이징 영역과 작업 디렉터리만 업데이트합니다. 이는 명령을 되돌릴 수 있음을 의미합니다. git rm 명령을 실행 취소하려면 git Reset을 사용하여 저장소를 마지막 커밋으로 재설정할 수 있습니다:

Git HEAD 커밋은 저장소의 마지막 커밋을 나타냅니다. 따라서 이 명령은 저장소를 마지막 커밋으로 되돌립니다.

이미 저장소에 변경 사항을 커밋한 경우에도 git rm 명령을 되돌릴 수 있습니다. 그렇게 하려면 git Reset 명령을 사용하고 되돌리려는 커밋의 해시를 지정하면 됩니다:

git reset a7e3cce9637c74281e6590003b39d3990bbb2731

git 저장소를 이전 커밋으로 되돌리고 있습니다. "reset"이라는 단어 뒤의 문자열은 마지막 커밋에 대한 해시입니다.

저장소를 되돌리면 해당 저장소가 커밋 전에 어떻게 표시되었는지 확인할 수 있습니다. 이는 파일이 계속 스테이징된다는 의미입니다. 즉, git rm 명령이 실행 취소된 것입니다.

Git rm 대 rm

git rm 명령은 작업 머신과 Git 저장소 모두에서 파일을 제거합니다. 반면 rm 명령은 Git 저장소에서 파일을 제거하지 않습니다.

Git 저장소에서 파일을 제거하려면 git rm을 사용해야 합니다. 이는 git rm 명령이 Git 저장소에서 파일을 제거하는 명령을 실행하기 때문입니다. Linux 시스템의 모든 파일이 Git 저장소에 있는 것은 아니므로 Linux rm 명령은 Git 저장소에서 파일을 제거하지 않습니다.

결론

git rm 명령을 사용하면 Git 저장소와 작업 디렉터리에서 파일을 제거할 수 있습니다. Git 저장소에서만 파일을 제거하려면 –cached 플래그를 사용하면 됩니다.

git rm 마스터하기:리포지토리에서 파일 제거를 위한 완벽한 가이드

"Career Karma는 제가 가장 필요할 때 제 삶에 들어왔고 빠르게 부트캠프에 적응할 수 있도록 도와주었습니다. 졸업한 지 두 달 만에 저는 제 삶의 가치와 목표에 맞는 꿈의 직업을 찾았습니다!"

Venus, Rockbot의 소프트웨어 엔지니어

귀하에게 적합한 부트캠프 찾기

이제 명령줄 전문가처럼 git rm 명령을 사용할 준비가 되었습니다!

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