소개
🧑💻 Git 또는 LabEx 를 처음 사용하시나요? Git 퀵 스타트 강좌부터 시작하는 것을 권장합니다.
Git 은 개발자가 코드베이스의 변경 사항을 추적할 수 있도록 해주는 강력한 버전 관리 시스템입니다. Git 에서 흔히 사용되는 작업 중 하나는 마지막 커밋에서 파일을 제거하는 것입니다. 이는 실수로 포함하려는 의도가 없었던 파일을 마지막 커밋에 추가했을 때 유용할 수 있습니다.
🧑💻 Git 또는 LabEx 를 처음 사용하시나요? Git 퀵 스타트 강좌부터 시작하는 것을 권장합니다.
Git 은 개발자가 코드베이스의 변경 사항을 추적할 수 있도록 해주는 강력한 버전 관리 시스템입니다. Git 에서 흔히 사용되는 작업 중 하나는 마지막 커밋에서 파일을 제거하는 것입니다. 이는 실수로 포함하려는 의도가 없었던 파일을 마지막 커밋에 추가했을 때 유용할 수 있습니다.
의도하지 않게 마지막 커밋에 파일을 추가했습니다. 메시지를 변경하지 않고 마지막 커밋에서 해당 파일을 제거하려고 합니다.
이 실습을 위해 https://github.com/labex-labs/git-playground의 저장소를 사용해 보겠습니다. git-playground라는 이름의 Git 저장소가 있고, 실수로 마지막 커밋에 추가한 file2.txt라는 파일이 있다고 가정해 보겠습니다. 마지막 커밋에서 파일을 제거하는 단계는 다음과 같습니다.
git clone https://github.com/labex-labs/git-playground
cd git-playground
git config --global user.name "your-username"
git config --global user.email "your-email"
git rm --cached <file>을 사용하여 지정된 <file>을 인덱스에서 제거합니다.git rm --cached file2.txt
git commit --amend를 사용하여 메시지를 변경하지 않고 마지막 커밋의 내용을 업데이트합니다.git commit --amend --allow-empty
파일을 삭제한 후 커밋이 빈 커밋인 경우 --allow-empty를 사용하고, 그렇지 않은 경우 생략할 수 있습니다.
이러한 명령을 실행하면 file2.txt 파일이 메시지를 변경하지 않고 마지막 커밋에서 제거됩니다.
Git 버전 관리에서 file2.txt를 제거하면 다음과 같은 결과가 나타납니다.
On branch master
Changes to be committed:
(use "git restore --staged <file>..." to unstage)
deleted: file2.txt
Untracked files:
(use "git add <file>..." to include in what will be committed)
file2.txt
마지막 커밋에서 파일을 제거하는 것은 Git 으로 작업할 때 유용한 기술이 될 수 있습니다. git rm --cached <file> 및 git commit --amend 명령을 사용하면 메시지를 변경하지 않고 마지막 커밋에서 파일을 쉽게 제거할 수 있습니다.