cd back-end/git

git 로컬 브랜치와 원격 브랜치 연결(소스트리,터미널)

성덕 2023. 8. 2. 23:45

main(master) 브랜치가 아닌 하위 로컬 브랜치와 원격 브랜치를 연동해야 할 일이 생겼다. 

이미 기존에 생성되어있는 로컬, 원격브랜치를 연결하고 push하는 방법을 알아본다. 

situation

원격지 브랜치 명 : feature/sourcetree-1

로컬 브랜치 명 : feature/sourcetree-local1

소스트리로 연결 및 push 하기

1. 로컬 브랜치와 원격브랜치 연결

연결 대상 로컬 브랜치(sroucetree-local1) 로 이동. (소스트리에서는 double click)

위 그림처럼 원격브랜치 추적 > 연결할 원격브랜치를 선택한다. 그럼 연결은 끝.

 

2. 원격브랜치로 push를 위한 로컬 브랜치 내용 수정 후 커밋

2-1. 로컬 브랜치 commit

커밋 메시지를 잘 보자. 

 

3. 원격 브랜치로 push

3-1. 원격지로 푸시하기
3-2. push 팝업

3-1 그림에서 "origin/feature/sroucetree-1로 푸시하기"를 선택하면 위와 같은 팝업이 뜬다.

리모트 브랜치를 "잘 보고" 선택해서 push 해야한다. 

로컬브랜치(sourcetree-local1)과 원격브랜치(sourcetree-1)가 같은 commit메시지로 적용 되어 있는 것을 알 수 있다. 

3-1 그림과 비교해보면 더 잘 이해할 수 있다. 

 

터미널 명령어로 연결 및 push 하기

소스트리로 작업한 내용을 터미널 명령어로 바꾸면 다음과 같다. 

 

1. 로컬 브랜치와 원격브랜치 연결

> git remote update // 원격지 branch들을 로컬 저장소에 update, 소스트리는 origin-우측클릭-origin에서 가져오기 선택.

> git checkout feature/sourcetree-local1 //commit할 local branch 로 이동
Switched to branch 'feature/sourcetree-local1'

> git branch --set-upstream-to origin/feature/sourcetree-1 //remote branch 와 연결
Branch 'feature/sourcetree-local1' set up to track remote branch 'feature/sourcetree-1' from 'origin'.

2. 원격 브랜치로 push

> git push origin HEAD:feature/sourcetree-1
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 12 threads
...