18. 포크된 리포지토리 최신화 및 작업 브랜치 관리 방법

Tasker_Jang·2024년 10월 5일
0

오픈소스 프로젝트에 기여하거나 협업할 때, GitHub에서 리포지토리를 포크(Fork)한 후에도 원본 리포지토리의 변경 사항을 반영하고 동기화하는 과정이 필요합니다. 이 글에서는 포크한 리포지토리를 원본과 최신 상태로 유지하면서, 새로운 작업 브랜치를 생성해 작업을 진행하는 방법을 단계별로 설명하겠습니다.

1. 원본 리포지토리와 동기화

포크한 리포지토리는 처음에는 원본 리포지토리와 동일하지만, 시간이 지남에 따라 원본 리포지토리가 업데이트될 수 있습니다. 이를 포크한 리포지토리에 반영하기 위해 원본 리포지토리의 변경 사항을 받아와야 합니다.

1.1 원본 리포지토리 추가

먼저, 포크한 리포지토리에는 원본 리포지토리의 주소를 'upstream'이라는 이름으로 추가합니다.

git remote add upstream https://github.com/원본-리포지토리-주소.git

여기서 https://github.com/원본-리포지토리-주소.git는 원본 리포지토리의 URL입니다. 이를 통해 원본 리포지토리의 최신 상태를 쉽게 가져올 수 있습니다.

1.2 최신 상태 가져오기

'upstream'으로 원본 리포지토리를 추가한 후, 원본 리포지토리의 최신 커밋을 가져옵니다.

git fetch upstream

이 명령어를 실행하면 원본 리포지토리의 모든 브랜치에 대한 최신 정보를 로컬로 가져옵니다.

1.3 로컬 'main' 브랜치 최신화

가져온 최신 정보를 바탕으로 로컬 리포지토리의 'main' 브랜치를 원본과 동기화합니다.

git checkout main
git merge upstream/main

이 과정을 통해 'main' 브랜치는 원본 리포지토리의 최신 상태와 동일하게 유지됩니다.

2. 새로운 작업 브랜치 생성

동기화된 'main' 브랜치에서 새로운 작업 브랜치를 생성해 작업을 시작할 수 있습니다. 새로운 작업 브랜치는 기능 단위로 관리하는 것이 좋습니다.

2.1 새로운 작업 브랜치 생성

예를 들어, 'fix-get-method'라는 이름의 새로운 작업 브랜치를 생성하려면 다음 명령어를 사용합니다.

git checkout -b feature/TaskerJang/120

이제 새로운 브랜치에서 코드를 수정하고 변경 사항을 추가할 수 있습니다.

3. 작업 내용 커밋 및 푸시

작업을 완료한 후에는 변경 사항을 커밋하고 GitHub에 푸시하여 공유할 수 있습니다.

3.1 변경 사항 커밋

변경 사항을 저장소에 커밋하려면 다음과 같이 명령어를 실행합니다.

git add .
git commit -m "Fix the incorrect GET method in the example code #120"

3.2 브랜치 푸시

변경 사항을 GitHub 리포지토리로 푸시합니다.

git push origin feature/TaskerJang/120

이 과정을 통해 GitHub에 있는 자신의 리포지토리에 최신 변경 사항이 반영됩니다.

profile
터널을 지나고 있을 뿐, 길은 여전히 열려 있다.

0개의 댓글