1. 로컬 develop 브랜치에 a 작성
  2. git add , git commit, git push 명령어로 원격 develop에 push
  3. git switch -c feature2 생성 후 a → a2로 수정 , B추가
  4. 원격 feature2 → develop pr날리고 merge

Untitled

  1. git switch -c feature1 생성 후 a → a1로 수정, C추가 후 원격 feature1으로 push

  2. 원격 feature1 → develop pr날리고 merge but… 충돌! merge 비활성화상태

    Untitled


충돌 해결

  1. 충돌을 해결하기 위해선 먼저 로컬 feature1에서 git pull origin develop을 해야합니다. 이 때 base를 어디에 두냐에 따라 병합하는 모양이 달라집니다.

Untitled

  1. 우리는 개인 브랜치에선 rebase방식을 쓸 거라서 먼저 git switch develop 해줍니다.

  2. git pull origin develop으로 최신 개발 파일을 머지해옵니다.

  3. git rebase feature1을 입력해서 base를 feature1의 마지막 커밋으로 옮깁니다.

    Untitled

  4. 아까 충돌되는 부분이 그대로라면 위 오류가 뜨고 rebase가 되지 않습니다.

  5. vscode는 충돌난 부분을 파일로 보여주고 둘중 뭘 쓸지 고르라고 합니다. 아예 다른 내용을 작성해도됩니다. 이때 팀원과 어떤 코드를 남길 지 상의하면됩니다.

Untitled

  1. 충돌난 내용을 수정 후 git add . → git merge develop 해줍니다. ( 아무작업 없을 땐 merge만)