Git Rebase -2[20210918]

Jungsoo kim·2021년 9월 19일
0

wecode

목록 보기
26/30

지난번 글에 이에 Git Rebase를 사용하는 방법에 대해 알아보려고 한다.

2. Git Rebase 사용 방법

  지난 글에서 한 가지 설명을 누락 한 것이 있는데, rebase 기능 사용시 squash라는 것을 해줘야 한다. rebase의 개념이 다른 프로그래머의 커밋 메세지가 중간중간 교차로 존재하는 것이 아니라, 하나의 작업에 해당하는 커밋 메세지가 일렬로 되게끔해주는 것이라고 말했었다. 이를 위해서는 내가 여태까지 만들어 논 커밋 메세지는 무시하고 새로 만든 커밋 메세지를 더해줘야 되는데 이 행위를 squash라고 한다.

squash까지 알아봤으면 이제 실제 어떻게 사용하는지에 대해 순서에 따라 알아보면 될 것 같다.

  1. 본인의 작업을 모두 마친 후 본인의 로컬 마스터 브런치로 이동한다.
  2. 깃 헙의 마스터 브런치에서 최신 버전을 pull하여 본인의 로컬 마스터 브런치와 깃 헙의 마스터 브런치를 동일하게 맞춰준다.
  3. 다시 작업을 마친 브런치로 돌아온다.
  4. 작업을 마친 브런치로 돌아와서 git rebase -i main 명령어를 입력한다.
  5. 위의 명령어를 입력하게 되면 아래와 같은 화면이 나타나게 된다.

첫 번째 사진을 보면 여태까지 내가 commit한 메세지의 내용이 나오게 되는데, 그 중에서 가장 오래된(가장 첫번째의 커밋 메세지)만 남기고 다른 커밋 메세지의 앞에 's'를 붙여준다. (squash의 s 라고 생각하면 된다.)

이후에 wq를 입력하여 수정사항이 반영되게 한 다음 문서를 빠져나오면 된다.

  1. 빠져나오게 되면 아래의 사진과 같은 문서가 한 번 더 나타난다.

    여기서는 이제 최종 commit message를 적은 후에 wq입력하여 문서를 빠져나오면 된다.

  2. 마지막으로 git log 명령어를 입력하여 git log를 확인하면 rebase가 완료 된 log를 확인할 수 있다.

  1. 마지막으로 깃 헙의 마스터 브런치로 작업 내용을 push 해주면 완료된다.

3. 마무리...

  1차 프로젝트를 진행하는 동안에는 git rebase에 관한건 아예 몰랐었다. 그래서 merge 기능만 사용했었고, 커밋 메세지가 뒤 섞여 있는 것에 대해서는 알고는 있었지만 크게 신경쓰지 않았었다. 그러나, git rebase라는 기능이 있다는 것을 이번에 알게되었고, 각 프로그래머의 커밋이 일렬로 몰려 있기 때문에 프로젝트 매니저가 커밋 메세지의 내용을 파악하는데 정말 도움이 될 것 같다고 생각했다. 얘기를 들어보니, 회사에 따라 머지를 사용하는 곳도 리베이스를 사용하는 곳도 있다고 하는데 개인적으론 리베이스 기능이 좀 더 좋은 것 같다. (물론, 상황에 맞게 둘다 적절히 사용하는것이 베스트인 것 같기는 하다.) 이번에도 다시 한 번 느낀거지만, Git 개발하신 분은 정말 천재인 것 같다... 그럼 이만!

profile
어렵지만 꾸준히 차근차근 해 나가자~!

0개의 댓글