Git에서 git reset
명령어를 사용한 후 변경 사항을 원격 저장소에 푸시하려면 다음 단계를 따르세요:
변경 사항 리셋: 먼저, 작업 디렉토리를 특정 커밋으로 되돌리기 위해
git reset
명령어를 사용합니다. 여기서는--hard
옵션을 사용하여 작업 디렉토리와 인덱스를 모두 업데이트합니다.git reset --hard <commit-hash>
원격 브랜치 강제 푸시: 로컬 브랜치의 상태를 원격 저장소에 강제 푸시하여 원격 브랜치의 히스토리를 덮어씁니다. 이때
--force
(또는-f
) 옵션을 사용합니다.git push origin <branch-name> --force
여기서
<commit-hash>
는 리셋할 커밋의 해시 값이며,<branch-name>
은 리셋할 브랜치의 이름입니다.
예시:
특정 커밋으로 리셋:
git reset --hard a1b2c3d4
리셋된 커밋을 원격 저장소에 강제 푸시:
git push origin main --force
이 과정에서 git reset --hard
명령어는 되돌리는 커밋 이후의 모든 로컬 변경 사항을 제거하므로 주의해서 사용해야 합니다. 또한, 강제 푸시는 원격 저장소의 히스토리를 덮어쓰기 때문에 다른 협업자들과의 충돌이 발생할 수 있습니다. 따라서 팀원들과의 충분한 의사소통 후에 진행하는 것이 좋습니다.
'IT > Git, GitHub' 카테고리의 다른 글
.gitignore 작성시 패턴 입력 예제 (0) | 2024.08.23 |
---|---|
Git clean -fd : Stage 에 올리지 않고 취소하기 (0) | 2024.08.12 |
Git 파일명에 의한 pull/checkout 오류 해결하기 (0) | 2024.07.09 |
Git commit 메시지 작성 가이드 (0) | 2024.07.04 |
git config 초기화 (0) | 2024.05.14 |