[Git] detached HEAD 문제 해결 방법IT/Git2023. 6. 2. 10:17
Table of Contents
반응형
git을 사용할 때 add와 commit 까진 실행이 잘 되는데 아래와 같이 detached HEAD 문제로 push 가 안 될 때 해결 방법을 정리하였습니다.
D:\project\Study\react> git push
fatal: You are not currently on a branch.
To push the history leading to the current (detached HEAD)
state now, use
git push origin HEAD:<name-of-remote-branch>
Detached Head 란, 말 그대로 head가 (branch로부터) 떨어져 있는 상태를 뜻한다.
즉, branch 를 통해서가 아니라 직접 다이렉트로 commit을 참조하고 있는 상태를 뜻한다.
git branch
명령어를 사용하여 살펴보니 지금 현재 브랜치는 HEAD detached from bdcfe3d8로 설정되어 있습니다.
D:\project\Study\react> git branch -a
* (HEAD detached from 537d4a3)
master
해결 방법
임시로 새로운 브랜치를 만들어 main 브랜치와 병합하여 해결하는 방법입니다.
브랜치 생성
현재 Head 분기를 참조하게끔 임시 브랜치를 생성합니다.
git branch temp
git checkout temp
또는
# -b 명령어 사용
git checkout -b temp
이렇게 하면 temp 라는 브랜치가 만들어지고, temp로 checkout을 하게 됩니다.
master 브랜치로 이동
git checkout master
병합
새로운 브랜치와 master 브랜치를 병합합니다.
git merge temp
새로운 브랜치 삭제
임시로 만든 temp 라는 브랜치를 삭제합니다.
git branch -d temp
push
마지막으로 push 를 실행하면 됩니다.
git push
push를 실행했을 때 아래와 같이 내용이 보이면 git push --set-upstream origin master
명령어를 사용해서 기본 브랜치를 설정합니다.
D:\project\Study\react> git push
fatal: The current branch master has no upstream branch.
To push the current branch and set the remote as upstream, use
git push --set-upstream origin master
To have this happen automatically for branches without a tracking
upstream, see 'push.autoSetupRemote' in 'git help config'.
반응형
'IT > Git' 카테고리의 다른 글
초보자가 알아야 할 14가지 Git 명령어 (23) | 2024.04.01 |
---|---|
효율적인 버전 제어를 위한 Git 명령 (0) | 2023.10.23 |
[Git] 이클립스에서 Git Repository 연동 (0) | 2022.09.04 |
[Git] 커맨드 명령어 (1) | 2022.08.29 |
[Git] 이클립스에서 Git 사용법 (0) | 2022.08.27 |
@고지니어스 :: 규니의 개발 블로그
IT 기술과 개발 내용을 포스팅하는 블로그
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!