개념:
Merge는 하나의 브랜치에서 작업한 내용을 다른 브랜치로 합치는 작업을 의미다. 가장 일반적인 사용 예는 feature
브랜치에서 새로운 기능을 개발한 후, 이를 dev
나 main
브랜치로 병합하는 것이다.
사용법:
Git에서는 보통 두 가지 방법으로 병합할 수 있다:
git merge
명령어를 사용하여 로컬에서 브랜치를 병합한다.예시 (직접 병합):
# 병합할 브랜치로 이동
git checkout dev
# 다른 브랜치의 변경사항 병합
git merge feature-branch
언제 사용하는지:
main
브랜치에 병합할 때 사용한다.개념:
Pull Request는 한 브랜치에서 다른 브랜치로 작업한 내용을 병합하기 전에 다른 개발자들에게 코드 리뷰를 요청하는 과정이다. 보통 GitHub, GitLab, Bitbucket 같은 플랫폼에서 사용되며, 팀 협업에서 매우 중요한 역할을 한다.
사용법:
git push origin feature-branch
.dev
브랜치와 병합하도록 요청.언제 사용하는지:
특징 | Merge | Pull Request |
---|---|---|
개념 | 한 브랜치의 작업을 다른 브랜치에 병합하는 작업. | 코드 리뷰를 요청하고 승인되면 병합하는 작업. |
사용 위치 | 로컬 환경 및 CLI에서 주로 사용. | GitHub, GitLab 등 협업 플랫폼에서 사용. |
목적 | 단순히 브랜치 병합을 완료하기 위한 방법. | 병합하기 전 코드 리뷰를 진행하여 품질 관리 및 협업에 도움. |
리뷰 과정 | 별도의 리뷰 과정 없이 직접 병합 가능. | 코드 리뷰 과정이 필수적이며, 승인되면 병합 가능. |
언제 사용하는지 | 주로 개인 프로젝트나 작은 팀에서 리뷰 없이 병합할 때. | 팀 협업에서 코드 리뷰가 필요한 경우. 코드 품질을 확인하고 병합. |
이슈 관리 | 단순 병합으로 이슈 관리에 관련이 적음. | 이슈 트래킹과 함께 PR을 사용하여 변경 사항과 관련된 이슈 관리. |
git merge
를 사용해 빠르게 병합할 수 있다.따라서, 팀원들과 협업하거나 코드 리뷰가 필요한 경우 Pull Request를 사용하고, 개인적인 간단한 작업에는 Merge를 직접 사용하는 것이 효율적이다.
작업할 브랜치를 먼저 만들고, 그 브랜치에서 코드를 수정해야 한다.
보통 main
이나 dev
브랜치를 바로 수정하지 않고, 기능별로 브랜치를 따로 만든다.
git checkout -b feature-branch
이 명령어로 feature-branch
라는 새로운 브랜치를 만들고, 그 브랜치로 이동한다.
브랜치에서 필요한 코드를 수정한 후, 그 변경 사항을 커밋한다.
git add .
git commit -m "작업한 내용을 설명하는 커밋 메시지"
로컬에서 작업한 브랜치를 원격 저장소로 푸시한다.
git push origin feature-branch
여기서 origin
은 원격 저장소 이름이고, feature-branch
는 현재 작업 중인 브랜치 이름이다.
Pull Requests
탭을 클릭한다.New Pull Request
버튼을 클릭하여 새로운 Pull Request를 만든다.main
이나 dev
).feature-branch
).base
브랜치와 compare
브랜치를 확인하고, 병합하려는 브랜치가 맞는지 확인한다.
설정이 완료되면 하단에 있는 Create Pull Request 버튼을 클릭한다.
git checkout -b feature-branch
)git push origin feature-branch
)Pull Request
탭으로 이동하여 New Pull Request
클릭Create Pull Request
클릭이 과정을 통해 팀 프로젝트에서 코드의 질을 높이고, 협업을 원활하게 할 수 있다.