위 게시글에 이어서..
local에서 develop 브랜치를 생성했다.
그래서 로컬에서 아래 명령어를 실행해주면 master와 develop브랜치가 잘 만들어졌다고 보이는 상황.
$ git branch
그러나 막상 Github에 들어가면 develop브랜치가 생성된 것이 반영되지 않았다.
이는 로컬에서만 branch를 생성해줬기 때문에 당연히! 원격 저장소인 Github엔 보이지 않는 상황이다.
아래의 명령어를 사용하여 develop branch를 원격 저장소에도 생성해주자.
$ git push origin develop
여기 까지만 수행해도 Github에 develop 브랜치는 잘 보인다.
하지만 아래의 명령어를 통해 local branch를 remote branch와 연동하는 작업도 수행하자!
즉, 앞으로 develop 브랜치에 push 명령어를 내리면 자동으로 origin의 develop 브랜치로 푸시하겠다는 의미.
origin은 develop 브랜치가 있는 위치를 나타낸다.
$ git push --set-upstream origin develop
혹은
$ git push -u origin develop
부가적인 설명을 더 해보자면,
처음 remote 저장소를 local에 clone 하게 되면
자동으로 local의 master 브랜치를 remote 저장소와 연결되는 origin/master 브랜치의 tracking branch로 만든다고 한다.
그래서 master 브랜치는 는 remote 저장소인 Github에서 잘 보이는 거고..
반면에 local에서 내가 $ git branch develop으로 만들어 줬던 develop브랜치는
tracking branch로 만들어진 것이 아니기 때문에 remote 저장소에 반영이 안 된다.
그렇기 때문에 위 명령어를 사용하여 local 브랜치를 remote 브랜치(default)로 만들어 tracking이 가능하게 해 주었다.
[참고] tracking branch란?
tracking branch는 remote branch와 직접적인 연결고리가 있는 local branch
🔽 REFERENCE
해결된 모습
아래 명령어를 입력하면 local과 remote의 branch를 모두 보여준다.
$ git remote show origin
branch 삭제하기
모든 pull request가 종료되어 merge까지 완료되었으면 해당 branch를 삭제해주자.
우선 해당 branch를 삭제하기위해선 다른 branch로 checkout한 후 진행해야 한다.
(여기선 merge까지 완료되어 삭제할 branch를 feature branch라 가정하자.)
$ git checkout develop
$ git branch -d feature
만약 commit 이력이 여전히 feature에 남아있는 경우엔 삭제되지 않는다. 이럴 땐 강제로 삭제해주자.
$ git branch -D feature
또한, local의 feature branch만 삭제하는 것이 아니라 원격 저장소의 feature branch도 삭제해줘야 한다.
아래 명령어를 통해 remote branch도 삭제해주자.
$ git push origin :feature
'기타 > 🚘 Git' 카테고리의 다른 글
Git 에러 # Updates were rejected because the tip of your current branch is behind (0) | 2021.09.01 |
---|---|
Git # Commit을 삭제함으로서 이전의 내용으로 완전히 복구하는 방법 (0) | 2021.09.01 |
간단한 Gitflow연습 # branch생성-checkout-merge-push까지! (0) | 2021.09.01 |
Git # 레포지터리 내용물을 그대로 복사하여 다른 레포지터리로 옮기는 방법 (0) | 2021.08.31 |
Branch별로 따로 작업할 때 git clone 하는 법 (0) | 2021.08.30 |