퍼블릭 Git 리포지토리의 이전 커밋으로 롤백

John Wachira 2024년2월15일
퍼블릭 Git 리포지토리의 이전 커밋으로 롤백

이 기사에서는 공개 Git 리포지토리를 이전 커밋으로 롤백하는 방법을 보여줍니다. Git 버전 제어로 작업하는 동안 원하는 지점으로 돌아갈 수 있습니다.

더 이상 고민하지 않고 오늘의 의제로 넘어가겠습니다.

퍼블릭 Git 리포지토리의 이전 커밋으로 롤백

항상 그렇듯이 이 개념을 설명하기 위해 예를 들어 보겠습니다.

아래에 표시된 커밋 기록이 있는 Git 리포지토리가 있습니다.

커밋 히스토리

저장소의 이 시점에서 HEADe65841a 커밋에 있습니다. 이를 HEAD@{0}라고도 합니다.

HEAD7c5a7db 커밋(예: HEAD@{3})에 있는 3개의 커밋으로 롤백하려면 어떻게 해야 합니까?

git reset 명령을 실행할 수 있지만 이것은 공개 저장소입니다. 공개 리포지토리에서 git reset 명령을 사용하는 것은 권장되지 않습니다.

프로젝트의 타임라인을 망칠 수도 있습니다. git reset 명령은 명령줄에 지정된 커밋을 제거한다는 점을 기억하십시오.

이를 수행하는 더 안전하고 깔끔한 방법은 git checkout 명령을 사용하는 것입니다. 다음은 명령에 대한 간단한 구문입니다.

$ git checkout <SHA-1>

이 경우 다음을 실행합니다.

$ git checkout 7c5a7db .

.에 유의하십시오. 명령 끝에. 전체 작업 트리에 변경 사항을 적용하도록 Git에 지시합니다.

항상 프로젝트의 루트에서 이 명령을 실행하십시오. 그렇지 않으면 체크인한 하위 디렉토리에만 적용됩니다.

git checkout

지정된 커밋 이후의 커밋은 삭제되지 않습니다. 대신 작업 트리에서 영향을 받는 모든 파일을 업데이트합니다.

코드를 가지고 놀면서 변경 사항을 커밋할 수 있습니다. 변경 사항을 커밋한 후 커밋 기록을 확인하여 사례를 확인하겠습니다.

확인할 커밋 내역

당신은 그것을 가지고 있습니다. 우리의 커밋은 여전히 온전하지만 Rollback이라는 새로운 커밋이 있습니다.

커밋 후 영향을 받는 파일은 HEAD@{4}의 파일과 동일해야 합니다.

간단히 말해서 공개 리포지토리는 특정 커밋으로 롤백할 때 많은 주의가 필요합니다. git reset --hard 명령을 사용하지 말고 대신 git checkout 명령을 사용하십시오.

훨씬 안전하고 깨끗합니다.

작가: John Wachira
John Wachira avatar John Wachira avatar

John is a Git and PowerShell geek. He uses his expertise in the version control system to help businesses manage their source code. According to him, Shell scripting is the number one choice for automating the management of systems.

LinkedIn

관련 문장 - Git Checkout