Daily Study : 11

dazzling:0
|2025. 9. 27. 10:30
반응형

Git 여러 Branch 만들어보기 


Branch 

분기된 가지 (다른 차원)

 

- 프로젝트를 하나 이상의 모습으로 관리해야 할 때 

예) 실배포용, 테스트서버용, 새로운 시도용 

 

- 여러 작업들이 각각 독립되어 진행될 때

예) 신기능1, 신기능2, 코드개선, 긴급수정 각각의 차원에서 작업한 뒤 확정된 것을 메인 차원에 통합

 

 

Branch 생성

git branch add-coach

 

브랜치 목록 확인

git branch

 

생성한 브랜치 add-coach 로 이동

git switch add-coach

- checkout 명령어가 Git 2.23 버전부터 switch, restore로 분리 되었다고 한다. 

 

브랜치 생성과 동시에 이동하기 

git switch -c new-teams

- 기존의 git checkout -b (새 브랜치명) 이랑 동일한 기능이다. 

 

브랜치 삭제하기 

git branch -d (삭제할 브랜치명)

- 지울 브랜치에 다른 브랜치로 적용되지 않은 내용의 커밋이 있을 시에는 -D(대문자) 옵션으로 강제 삭제해야 한다. 

 

브랜치 이름 바꾸기

git branch -m (기존 브랜치명) (새 브랜치명)

 

여러 브랜치의 내역 편리하게 보기 

git log --all --decorate --oneline --graph

 

 

Branch 합치기 merge & rebase


서로 다른 브랜치를 합치는 두 방식

 

merge

두 브랜치를 한 커밋에 이어붙입니다. 

 

- 브랜치 사용내역을 남길 필요가 있을 때 적합한 방식이다. 

- 다른 형태의 merge에 대해서도 이후 알아보게 된다. 

- main branch 에서 진행한다. 

 

git merge 브랜치명

 

merge는 reset으로 되돌리기 가능하다. 

- merge도 하나의 커밋이다.

- merge하기 전 해당 브랜치의 마지막 시점으로 되돌린다. 

 

⭐️ 병합된 브랜치는 삭제 ⭐️

git branch -d add-coach

 

 

rebase

브랜치를 다른 브랜치에 이어붙인다. 

 

- 한 줄로 깔끔히 정리된 내역을 유지하기 원할 때 적합하다. 

- 이미 팀원과 공유된 커밋들에 대해서는 사용하지 않는 것이 좋다. 

- 히스토리를 깔끔하게 만드는게 중요한거에 적합하다. 

 

git rebase main

 

 

- rebase 는 main 브랜치가 아닌 합치려는 다른 브랜치에서 진행한다

 

 

Branch 간 충돌 해결하기 


같은 부분을 수정하고 브랜치를 합치려고 할 때 생기는 문제이다. 어느 것을 선택할지 선택하고 머지를 계속 진행하면 되는데, 

 

당장 충돌 해결이 어려울 경우에는 아래 명령어로 merge를 중단할 수 있다. 

git merge --abort

 

 

rebase 진행 중에 발생한 충돌 또한 해결할 수 있는데, git status 부터 확인하고 선택을 하면 된다. 

 

마찬가지로 지금 당장 해결이 어려울 거 같으면 명령어로 중단할 수 있다.

git rebase --abort

 

만약에 해결 가능하다면 충돌 부분을 수정한 뒤에 git add . 를 다시 쳐주고 아래 명령어를 쳐주면 된다. 

git rebase --continue

- 충돌이 모두 해결될 때까지 반복해야 한다. 

 

git push -u origin main

GitHub


코드 공유 및 협업 서비스. Git으로 관리하는 프로젝트들을 온라인 공간에 공유해서 프로젝트 구성원들이 함께 소프트웨어를 만들어갈 수 있도록 도와주는 서비스이다. 

 

일반 클라우드 서비스에서는 동시 작업이 불가능하다. 

 

모든 업로드와 다운로드를 커밋 단위로 주고받는다. 

 

 

협업 준비하기 

깃허브에서 해당 repository 들어간 다음 settings -> Collaborators -> Add people

 

- Manage Access 가 Collaborators 로 변경되었음

 

 

GitHub 레포지토리 생성 후 연동 

git remote add origin 원격 저장소 주소

 

기본 브랜치명 main으로 변경 

git branch -M main

 

로컬 저장소의 커밋 내역들 원격으로 push(업로드) 

 

 

프로젝트 다운받기 

 

2가지 방법이 있는데 레포티토리에서 Code 버튼을 클릭하면 다운로드 ZIP파일을 받을 수 있다. 그러나 다운로드 ZIP파일을 직접 받는 것은 협업할 때 사용하는 방법이 아니다. 깃의 관리내용이 들어가 있지 않음. 

 

협업을 할 때는 프로젝트를 다운받기 원하는 폴더를 생성 후 터미널에서 대상 폴더로 이동을 한 뒤에 아래 명령어를 입력하면 된다. 

git clone 원격 저장소 주소

 

 

 

 

 

 

728x90
반응형

'TIL & STUDY' 카테고리의 다른 글

Daily Study : 13  (0) 2025.09.30
Daily Study : 12  (1) 2025.09.29
Daily Study : 10  (0) 2025.09.26
Daily Study : 9  (1) 2025.09.25
Daily Study : 8  (0) 2025.09.24