컴공생의 다이어리

[Git] 특정 커밋(commit) 삭제 : rebase 사용 본문

Development/Git

[Git] 특정 커밋(commit) 삭제 : rebase 사용

컴공 K 2022. 3. 16. 00:01

[Git] 특정 커밋(commit) 삭제 : rebase 사용

깃에서 특정 커밋을 삭제하려면 rebase명령어를 사용해서 삭제할 수 있다.

 

다음과 같이 로그가 있을 때 아래 표시한 커밋을 제거해보겠다.

 

 

제거하려고 하는 커밋의 이전 커밋 id를 git rebase -i 뒤에 넣어서 명령어를 입력해준다. 이 게시물의 예제로는 example 주석 밑의 명령어를 입력하면 된다.

git rebase -i {제거하려고 하는 커밋의 직전 커밋 id}

# example
git rebase -i c0787fe491870f590a

 

 

rebase 명령어를 입력하면 아래와 같은 화면이 나오는데 제거하려고 하는 커밋이 제일 위에 있을 것이다. 여기서 제거하려는 커밋의 작업 타입을 pick에서 d 혹은 drop으로 변경하고 저장 후 종료(:wq)한다.

왼쪽 : 제일 처음 화면, 오른쪽 : 제거하려는 커밋 타입 변경 후

 

 

git log를 통해 성공적으로 커밋이 제거된 것을 확인할 수 있다.

 

 

 

 

 

 

 

https://velog.io/@owljoa/Rebase-%ED%99%9C%EC%9A%A9%ED%95%9C-%ED%8A%B9%EC%A0%95-%EC%BB%A4%EB%B0%8B-%EC%88%98%EC%A0%95%EC%A0%9C%EA%B1%B0

 

Rebase 활용한 특정 커밋 수정/제거

Git은 기록(커밋)을 변경하는 도구를 제공하진 않지만, rebase를 이용하는 방법은 제시하고 있다.rebase의 주목적은 커밋 기록을 선형으로 만들기 위함.몇몇 커밋들을 본래 베이스였던 HEAD(현재 git이

velog.io

 

728x90
Comments