[GIT] 원격 브랜치 삭제하기

Space Developher·2022년 5월 6일
0

Git

목록 보기
4/10

1. 정의

Git 브랜치는 원격저장소인 Remote Branch 와 로컬저장소인 Local branch 로 나뉜다.
로컬저장소는 현재 PC 에서만 유효한 저장소이기 때문에 작업 후 삭제하여도 원격브랜치는 남아있게된다.
주기적으로 작업이 완료된 Remote Branch 를 삭제해야한다.

2. 방법

1) 현재 브랜치 확인

git branch -a
* master 
  examplebranch 
  remotes/origin/master
  remotes/origin/examplebranch

prefix 가 존재하지 않는 브랜치는 Local Branch 이고, remotes 로 prefix 가 존재하는 브랜치는 Remote Branch 이다.

2) 브랜치 삭제

git push origin --delete <브랜치명>
To https://github.com/IfUwanna/branchTest
- [deleted]         newbranch

3) 브랜치 삭제 확인

git branch -a
* master
  remotes/origin/master

3. TroubleShooting

1) 원격 브랜치 삭제시 에러 발생

git push origin -d examplebranch
error: unable to delete 'examplebranch': remote ref does not exist
error: failed to push some refs to '<git.path...>'

원격 브랜치를 삭제하려고 하니 원격브랜치의 경로를 찾을 수 없다는 에러가 발생한다.
브랜치 목록을 확인하였을 때에는 원격 브랜치가 존재하는 것을 확인할 수 있음에도 에러가 발생한다.

# 해결방법

로컬에 기록되어있는 원격저장소의 Branch 와 실제 원격저장소의 Branch 정보가 일치하지 않아 발생한 문제이다.
fetch 명령어를 통해 실제 원격저장소의 브랜치 정보를 가져와 갱신해야한다.

git fetch -p origin
From <git.path ...>
 - [deleted]           (none)     -> origin/examplebranch
 - [deleted]           (none)     -> origin/examplebranch2
 - [deleted]           (none)     -> origin/examplebranch3
profile
어제보다 오늘 더, 오늘보다 내일 더

0개의 댓글