# 다음과 같이 2개의 pr 커밋들을 master linear 하게 만들기
# 커밋 해시값이 다음과 같을때
update readme (333)
update about_me.md (222)
remove navbar-brand (111)
# master 브랜치에서
git co master
# 2개의 커밋 이전의 커밋 기준으로 rebase 후 모두 pick
# --committer-date-is-author-date 옵션이 없으면 pick 된 모든 커밋이
현재시간으로 변경되니 꼭 사용하자.
git rebase -i --committer-date-is-author-date 111
# 만약 커밋 수정이 잘못됐고 아직 푸시전이라면 rebase 전의 커밋으로 reset
git reset --hard "rebase 전 커밋 해시값"
# 강제 푸시
git push -f
# master 브랜치로 linear 하게 커밋이 정리되었다.
git fetch origin
git reset --hard origin/master
# 커밋 시간 관련 고려사항
# merge 에 포함된 커밋들 날짜가 오래된 경우
# 다음과 같이 merge 내역이 있는 상태에서는 그래프가 표시되어 구분이 용이하지만
# 다음과 같이 linear 후 최신 커밋들 뒤로 위치해 히스토리(그래프)가 사라져
혼동을 줄 수 있다.
comments:
댓글 쓰기