Git Question

이상철·2021년 12월 8일
0

git,github

목록 보기
2/2

나는 깃으로 어떻게 일했는가?

2021년 11월엔 인턴쉽에 참여해서 프로젝트를 진행했었다.
회사에서 만들고 있던 프로젝트의 레포를 pull 받아서
새로운 브랜치를 만들고 작업을 실시했다.
브랜치는 기능별로 나눴으며, 작업을 실시한 후,

git add .

git commit -m "ADD: slide 기능 구현"
이런 식으로 커밋을 쌓은 후

git rebase -i main
으로 모든 커밋 메세지를 하나로 통일 시킨 후

git push origin branchName

깃 레포지토리로 넘어가서 pr 메세지를 작성하고 담당 프런트엔드 개발자님이 pr 메세지 검토 후 머지를 하는 식으로 진행했었습니다.

하지만 개인 프로젝트 시에는

git init
git add .
git commit -m "first commit"
git remote add origin "레포지토리URL"
git push origin master
순서대로 진행했습니다.

git rebase && git squash

리베이스(rebase)란 기준이 되는 베이스를 다시 지정해서 브랜치끼리 합쳐주는 작업이다.
글로만 봤을 땐 merge와 똑같이 동작하지만,
리베이스를 하는 이유는 commit message를 통일하여 깔끔하게 github에 관리하기 위함이다.
리베이스를 하기 위해 커밋 메세지를 하나로 모으는 과정을 git squash라고 합니다.

Merge는 Merge commit 기록이 추가로 남게 되지만 Rebase의 경우에는 branch 병합 시 Merge commit 기록이 남지 않는다. 따라서 마치 하나의 브랜치에서 작업한 것처럼 보여진다.

Question

이미 서비스가 런칭된 상태인데 기획자가 바뀐 기획의도를 가지고 웹서비스를 다시 만들라고 하면, git을 어떻게 사용할건가?

지금 배포 되있는 레포지토리를 pull 받은 후 main 브랜치에서 새로운 브랜치를 만들어 바뀐 기획의도의 작업을 진행 후 pr 메세지를 올려 확인을 하고 이상이 없을 시 merge를 하여 업데이트해준다. 라는게 제 생각입니다.

profile
헤더부터 푸터까지!!!

0개의 댓글