왕초보 깃허브 시작하기 : 1. 계정 생성부터 개념, 저장소(repository) 생성까지
상단에 글과 이어집니다.
(깃허브 계정생성, Repository 생성, 깃 설치, 깃허브 사전 지식 등에 관한 내용)

브랜치란?

브랜치(Branch)

브랜치는 깃에서 코드를 분리하고 독립적으로 관리할 수 있도록 하는 개념입니다.
브랜치를 사용하면 여러 개발자가 동시에 작업하거나 특정 기능을 개발할 때 각자 독립적인 작업 환경에서 작업할 수 있습니다.
각 브랜치는 프로젝트의 특정 상태를 나타내며, 변경 사항을 다루기 위해 사용됩니다.

주요 브랜치 관련 용어와 개념

메인 브랜치(Main/Branch):
프로젝트의 기본이 되는 브랜치로서, 주로 "main" 또는 "master"라는 이름으로 사용됩니다.
일반적으로 안정된 코드를 유지하고 배포하기 위해 사용됩니다.

피처 브랜치(Feature Branch):
특정 기능을 개발하기 위해 메인 브랜치에서 파생된 브랜치입니다.
개발자는 피처 브랜치에서 해당 기능을 구현하고 테스트한 후, 완료되면 메인 브랜치로 병합(merge)할 수 있습니다.

브랜치 생성(Create a Branch):
새로운 브랜치를 만들어 기존 브랜치에서 독립적으로 작업을 수행할 수 있습니다.

git branch [브랜치 이름]

브랜치 전환(Switch Branch):

작업 중인 브랜치를 변경합니다.

git checkout [브랜치 이름]

또는

git switch [브랜치 이름]

브랜치 병합(Merge Branch):
브랜치를 현재 브랜치로 병합합니다.

git merge [브랜치 이름]

브랜치를 사용하면 여러 작업이 동시에 진행되거나 새로운 기능을 안전하게 개발할 수 있으며, 각 브랜치는 독립적인 커밋 히스토리를 가지게 됩니다. 이는 협업과 프로젝트 관리를 더욱 효과적으로 할 수 있도록 도와줍니다.

GitHub 작업 플로우와 용어, 명령어정리


(출처 : https://phoenixnap.com/kb/how-git-works)

Working Tree : 작업 트리
Working Directory : 작업 디렉터리
Staging Area(Index) : 스테이징 영역
Repository : 저장소
-Local Repository : 로컬 저장소
-Remote Repository : 원격 저장소

포크(Fork):
프로젝트의 원본 저장소를 개인 계정으로 포크합니다.
이를 통해 원본 프로젝트를 수정하지 않고 개인 계정에서 변경을 가할 수 있습니다.

클론(Clone):
개인 계정에서 포크한 저장소를 로컬 환경으로 복제합니다.
포크를 거치지 않더라도 저장소 URL을 입력하여 로컬 환경으로 복제할 수 있습니다.

git clone [저장소 URL]

변경 사항을 스테이징 영역에 추가(add):
변경 사항을 스테이징 영역에 추가합니다.

git add [파일명]

또는

git add .

로컬에서 변경사항 커밋(Commit Locally):
로컬에서 작업하고 변경한 내용을 로컬 저장소에 커밋합니다.

git commit -m "커밋 메세지"

원격 저장소에 푸쉬(Push to Remote):

로컬 변경 사항을 원격 저장소로 푸쉬합니다.

git push [원격 저장소 이름] [브랜치 이름]

병합하기(merge)
브랜치를 현재 브랜치로 병합합니다.

git merge [브랜치 이름]

풀 리퀘스트(Pull Request, PR):
로컬에서 작업한 변경 사항을 원격 저장소에 푸쉬하고 풀 리퀘스트를 생성합니다.
PR은 기능 추가, 버그 수정 등의 변경 사항을 원본 저장소로 병합하도록 요청하는 것입니다.

git pull-request

리뷰와 머지(Review and Merge):

풀 리퀘스트를 생성한 프로젝트 관리자 또는 협업자가 코드 변경 사항을 확인하고 필요한 리뷰를 진행합니다.
리뷰가 완료되면 풀 리퀘스트가 원본 저장소에 머지됩니다.

원격 저장소에서 최신 변경 사항을 현재 브랜치에 가져오기(pull):
원격 저장소에서 최신 변경 사항을 가져와 현재 브랜치에 병합합니다.

git pull [원격 저장소 이름] [가져올 브랜치 이름]

이러한 작업플로우는 여러 개발자가 동시에 협업하고 변경 사항을 관리할 때 효과적으로 사용됩니다.
특히 풀 리퀘스트를 통한 코드 리뷰는 프로젝트의 코드 품질을 유지하고 협업을 원활하게 합니다.

+ Recent posts