• 카테고리

    질문 & 답변
  • 세부 분야

    개발 도구

  • 해결 여부

    미해결

브랜치를 main(master) 와 동기화 하고 싶을 때

22.08.29 14:42 작성 조회수 5.16k

0

안녕하세요.

main에만 commit 된 내용이 있는상황에서 branch를 main과 상태를 같이 하려면

branch에서 main을 머지시키면 되나요?

$ git checkout main
$ git pull

코드수정 commit

이후 branch1을 main과 코드 상태를 같이만드려면 아래와 같이 하면 될까요?
$ git checkout branch1
$ git merge main
$ git push

현업에서 브랜치에서 코드수정+ 테스트 후 main에 머지를 하는 방향으로 하고 싶은데,

요약하면
main에는 이미 변경사항이 많이 적용되어 있고,
branch에는 main의 변경사항이 모두 반영되어 있지 않은 경우, main과 branch를 같이 만든 후 branch 에 코드 변경작업을하고 싶습니다.

답변 1

답변을 작성해보세요.

1

안녕하세요,

네 맞습니다.

main에 변경사항이 쌓여 있고 특정 branch (가령 branch1)을 main과 동일하게 만들기 위해서는

branch1으로 체크아웃하신 뒤 (git checkout branch1)

main을 merge하시면 됩니다.(git checkout main)

그러면 branch1은 main과 동일한 상태가 됩니다.

혹여 충돌이 나시면 해당 부분(같은 부분을 다르게 수정한 부분)만을 해결하시면 되구요,

main과 동일한 상태가 된 branch1 을 깃허브로 push하고자 하신다면

branch1을 push 하시면 됩니다 (git push origin branch1)

쏭쏭님의 프로필

쏭쏭

질문자

2022.08.31

main (master) 브랜치를 중심으로 두고, 수정/변경은 브랜치에서 작업하고 테스트 후에 main에 머지하고 싶은데요,
이렇게 하려면
매 번 답변주신 것과 같이 branch 에서 main을 머지하는 방법이 나은 지
아니면 기존 브랜치를 지우고 main에서 브랜치를 삭제했던 브랜치와 같은 이름의 브랜치를 만드는 게 나은지 의견 부탁드립니다(강사님이면 어떻게 하실 것 같은 지)

감사합니다.

안녕하세요,

저라면 매번 (정확히는 구현하고자 하시는 기능별로) branch를 만들고

해당 branch에서 작업 및 테스트를 거친 뒤

테스트까지 완료되었다면 해당 브랜치를 main으로 merge 시키는 방법을 택할 것 같습니다.

브랜치 이름은 해당 브랜치에서 구현하고자 했던 부분과 연관되어 지으면 될 뿐

크게 상관은 없습니다.