로컬 브랜치를 삭제 한 후 경고 메시지를 더 잘 이해하고 싶습니다.
경고 :
'old_branch'에 병합'refs/remotes/origin/old_branch'되었지만 아직에 병합되지 않은 분기 를 삭제 합니다HEAD.
로컬 브랜치를 삭제 한 후 경고 메시지를 더 잘 이해하고 싶습니다.
경고 :
'old_branch'에 병합'refs/remotes/origin/old_branch'되었지만 아직에 병합되지 않은 분기 를 삭제 합니다HEAD.
답변:
이는의 브랜치에 변경 사항이 푸시 origin되었지만에 병합되지 않았 master으므로 로컬로만 삭제 한다는 경고 일뿐 입니다.
더 이상 해당 분기의 로컬 사본이 없다는 경고가 표시되지만 origin
원격 브랜치도 삭제하려면 git push --delete origin old_branch
master이것에 관여하지 않는다. 오히려 현재 분기를 의미합니다. ;)
git branch -d branch_name로컬에서만 브랜치를 삭제해야하는 경우에도이 경고가 표시 됩니다. 이 경우 경고가 필요한 이유는 무엇입니까?
현재 한 가정 master체크 아웃, 그것은 변경에 만든 의미 old_branch에서 존재하지 않습니다 master. 그러나 에 존재 old_branch합니다 origin.
HEAD", HEAD여기는 로컬 마스터 브랜치의 HEAD를 참조합니다.
이는 해당 지역의 지점을 의미 old_branch원격 지사와 최신 상태로 old_branch원격에 origin있지만 분기에 합병되지 masterREPO의 주요 지점으로 간주됩니다.
git의 예방 조치 일뿐입니다. 힌트를 제공합니다. topic-branch에서 일을했고 메인 브랜치에 병합하는 것을 잊었습니까?
최신 정보
Git은 변경 사항을 잃지 않도록 경고합니다. 예를 들어 old_branch마스터 git에없는 경우 마스터에 병합되지 않은 분기를 삭제할 수도 없습니다 (허용하지만 옵션 인 키 -D사용 force-delete).
master아니지만 현재 HEAD.