Git의 리포지토리에서 파일 제거

Azhar Bashir Khan 2021년12월25일
Git의 리포지토리에서 파일 제거

이 튜토리얼은 Git 리포지토리에서 파일을 제거하는 방법을 보여줍니다.

Git은 협업 개발 환경을 가능하게 합니다. 따라서 많은 파일이 개발자 팀에 의해 Git 리포지토리에 커밋됩니다.

종종 더 이상 필요하지 않거나 중복되는 일부 파일이 발생합니다. 이러한 경우 이미 저장소에 커밋된 파일이나 폴더를 삭제하는 것이 적합하다고 간주합니다.

이제 이를 예를 들어 설명하겠습니다.

git rm을 사용하여 Git 저장소의 파일 및 폴더 제거

Git 저장소에 folder1이라는 폴더가 있다고 가정합니다. 또한 이 폴더에는 file1file2라는 두 개의 파일이 있습니다.

$ ls folder1/
file1  file2

Git 리포지토리에서 파일을 삭제하려면 다음과 같이 해야 합니다.

$ git rm <filename>

$ git commit -m "commit message"

$ git push origin branch_name

첫 번째 명령은 Git 리포지토리와 파일 시스템에서 파일을 삭제합니다. 후속 명령은 변경 사항을 커밋하고 변경 사항(즉) 파일 삭제를 원격 저장소로 푸시하는 데 사용됩니다.

따라서 file1을 삭제하려면 이 예에서 다음과 같이 합니다.

$ cd folder1

$  git rm file1
rm 'folder1/file1'

folder1으로 이동하고 저장소와 파일 시스템에서 file1을 삭제했습니다.

삭제 상태는 다음과 같이 확인할 수 있습니다.

$ git status
On branch main
Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)

	deleted:    file1

이제 이 삭제를 다음과 같이 커밋합니다.

$ git commit -m "deleted file"
[main 27ec53b] deleted file
 1 file changed, 0 insertions(+), 0 deletions(-)
 delete mode 100644 folder1/file1
 
$ git push origin main

때로는 파일 시스템이 아닌 저장소에서만 파일을 삭제하고 싶을 수 있습니다. 그 파일을 다른 용도로 사용하고 싶을 수도 있습니다.

파일 시스템이 아닌 저장소에서만 파일을 삭제하려면 다음을 수행해야 합니다.

$ git rm --cached file2

$ git commit -m "Removed file2 from repository only"

$ git push origin main

--cached 옵션과 함께 git rm 명령을 실행하면 파일이 저장소에서 제거되지만 작업 트리(예: 파일 시스템)에서는 제거되지 않습니다.

때로는 전체 폴더를 삭제해야 할 수도 있습니다.

이렇게 하려면 다음과 같이 git rm 명령에 -r 옵션을 추가해야 합니다.

$ git rm -r folder1
rm 'folder1/file2'

$ git commit -m "removed folder1"
[main dabfe02] removed folder1
 1 file changed, 0 insertions(+), 0 deletions(-)
 delete mode 100644 folder1/file2
 
$ git push origin main

따라서 이 예에서는 이제 폴더 viz를 삭제했습니다. 내용과 함께 folder1.

git rm에 대한 자세한 내용은 다음 사이트를 탐색하십시오 - git rm.

관련 문장 - Git Repository