로컬에서 변경된 파일들을 무시하고 원격 저장소의 main
브랜치를 강제로 받아와야 할 때가 있습니다. 이때, 원격 브랜치의 상태로 로컬 브랜치를 덮어쓰는 방법에 대해 설명드리겠습니다.
1. 명령어 실행하기
로컬 변경 사항을 완전히 무시하고 원격 main
브랜치를 강제로 덮어쓰려면 다음 명령어를 터미널에 입력합니다:
git fetch origin
git reset --hard origin/main
명령어 설명
git fetch origin
: 원격 저장소의 최신 커밋 정보를 가져옵니다. 이 명령어는 단순히 원격 저장소에서 데이터를 로컬로 가져오는 역할을 합니다.git reset --hard origin/main
: 현재 로컬 작업 디렉토리를 원격main
브랜치의 상태로 덮어씁니다. 이때 로컬에서 작업한 모든 변경 사항은 삭제되며, 원격 브랜치 상태로 되돌아갑니다.
2. 브랜치 이름이 다를 경우
만약 사용 중인 브랜치 이름이 main
이 아니라 master
또는 다른 브랜치라면, 명령어에서 해당 브랜치 이름을 바꾸어 사용해야 합니다. 예를 들어, master
브랜치의 상태로 덮어쓰려면 다음과 같이 변경합니다:
git fetch origin
git reset --hard origin/master
3. 중요한 주의 사항
이 명령어는 로컬에서 작업한 변경 사항을 완전히 삭제합니다. 만약 변경 사항을 잃고 싶지 않다면, 미리 백업을 하거나 다른 브랜치에 임시로 저장해두는 것이 좋습니다.
로컬에서 변경한 내용을 백업하는 방법:
git stash
이 명령어를 통해 변경 사항을 임시로 저장할 수 있습니다.
결론
git fetch
와 git reset --hard
명령어는 로컬에서 변경한 내용을 무시하고 원격 저장소의 상태로 돌아가고 싶을 때 매우 유용합니다. 하지만 로컬 변경 사항이 모두 사라지므로, 중요한 파일이나 변경 내용이 있다면 꼭 백업해두는 습관을 들이세요.
반응형
'GIT' 카테고리의 다른 글
git : rebase 사용법 (작업하던 내로컬을 최신 main기반으로 변경 (0) | 2024.10.08 |
---|---|
GIT : 변경 사항을 무시하고 main 브랜치로 되돌리기 (0) | 2024.10.08 |