질문 : Git 브랜치를 로컬 및 원격으로 삭제하려면 어떻게해야합니까?
로컬 및 원격으로 브랜치를 삭제하고 싶습니다.
$ git branch -d remotes/origin/bugfix
error: branch 'remotes/origin/bugfix' not found.
$ git branch -d origin/bugfix
error: branch 'origin/bugfix' not found.
$ git branch -rd origin/bugfix
Deleted remote branch origin/bugfix (was 2a14ef7).
$ git push
Everything up-to-date
$ git pull
From github.com:gituser/gitproject
* [new branch] bugfix -> origin/bugfix
Already up-to-date.
로컬 및 원격 모두에서 remotes/origin/bugfix
브랜치를 성공적으로 삭제하려면 어떻게해야합니까?
답변
요약
$ git push -d <remote_name> <branch_name>
$ git branch -d <branch_name>
대부분의 경우 원격 이름은 origin
입니다. 이 경우 이와 같은 명령을 사용해야합니다.
$ git push -d origin <branch_name>
로컬 분기 삭제
로컬 브랜치를 삭제하려면 다음 중 하나를 사용하십시오.
$ git branch -d branch_name
$ git branch -D branch_name
참고 : -d
--delete
의 별칭으로, 업스트림 분기에서 이미 완전히 병합 된 경우에만 분기를 삭제합니다. "병합 상태에 관계없이"브랜치를 삭제하는 --delete --force
의 별칭 인 -D
를 사용할 수도 있습니다. [출처 : man git-branch
]
또한 제거하려는 분기에 현재있는 경우 git branch -d branch_name
메시지는 오류로 시작합니다. error: Cannot delete the branch 'branch_name'
그렇다면 먼저 다른 분기로 전환하십시오 (예 : git checkout main
.
원격 분기 삭제[8-Sept-2017에 업데이트됨]
Git v1.7.0부터는 다음을 사용하여 원격 브랜치를 삭제할 수 있습니다.
$ git push <remote_name> --delete <branch_name>
기억하기 더 쉬울 수 있습니다.
$ git push <remote_name> :<branch_name>
이는 Git v1.5.0에서 "원격 브랜치 또는 태그를 삭제하기 위해"추가되었습니다.
Git v2.8.0 부터는 --delete
의 별칭으로 -d
옵션과 함께 git push
를 사용할 수도 있습니다.
따라서 설치 한 Git 버전에 따라 더 쉬운 구문을 사용해야하는지 더 어려운 구문을 사용해야하는지 결정됩니다.
원격 분기 삭제[2010년 1월 5일 원본 답변]
Scott Chacon 의 Pro Git 3 장에서 발췌 :
원격 지점 삭제
원격 브랜치 작업을 완료했다고 가정 해 보겠습니다. 예를 들어 귀하와 귀하의 공동 작업자가 기능을 완료하고이를 원격의 기본 브랜치 (또는 안정적인 코드 라인이있는 브랜치)에 병합했습니다. git push [remotename] :[branch]
사용하여 원격 분기를 삭제할 수 있습니다. 서버에서 server-fix 브랜치를 삭제하려면 다음을 실행합니다.
$ git push origin :serverfix
To git@github.com:schacon/simplegit.git
- [deleted] serverfix
서버에 더 이상 지점이 없습니다. 해당 명령이 필요하고 구문을 잊어 버릴 가능성이 높기 때문에이 페이지를 훑어 보는 것이 좋습니다. 이 명령을 기억하는 방법은 조금 전에 살펴본 git push [remotename] [localbranch]:[remotebranch]
[localbranch]
부분을 생략하면 기본적으로 "내쪽에 아무것도 가져 가지 않고 [remotebranch]
만드십시오."라고 말하는 것입니다.
나는 git push origin: bugfix
발행했고 아름답게 작동했습니다. Scott Chacon의 말이 옳았습니다. 저는 그 페이지 (또는 Stack Overflow에서이 질문에 답하여 가상으로 개 귀)를 귀를 기울이고 싶습니다.
그런 다음 다른 컴퓨터에서 실행해야합니다.
# Fetch changes from all remotes and locally delete
# remote deleted branches/tags etc
# --prune will do the job :-;
git fetch --all --prune
변경 사항을 전파합니다.
출처 : https://stackoverflow.com/questions/2003505/how-do-i-delete-a-git-branch-locally-and-remotely
'개발관련 > Git' 카테고리의 다른 글
Git 하위 모듈을 오리진의 최신 커밋으로 업데이트 (0) | 2021.07.28 |
---|---|
[오류] git: undo all working dir changes including new files (0) | 2021.07.27 |
git reset --hard에서 커밋되지 않은 변경 사항을 복구하는 방법 (0) | 2021.07.23 |
[오류] git : fatal : Could not read from remote repository. (0) | 2021.07.21 |
[오류] GitHub Error Message - Permission denied (publickey) (0) | 2021.07.21 |