programing

HEAD와 마스터(또는 주) 간의 차이

goodsources 2023. 7. 10. 22:17
반응형

HEAD와 마스터(또는 주) 간의 차이

사이의 차이점은 무엇입니까?HEAD그리고.master깃에서?

GitHub에서 프로젝트를 복제했는데 변경 사항을 원격으로 푸시하려고 합니다.그런데 어느 쪽으로 밀어야 하나요?

screenshot

master분기의 끝에 대한 참조입니다.관례에 따라 이것은 보통 주요 통합 분기이지만 그럴 필요는 없습니다. (2020년 7월 출시된 git v2.28.0 기준으로 기본 이름은 에서 변경되었습니다.)master로.main)

HEAD는 실제로 다른 참조를 가리키는 특수한 유형의 참조입니다.을 가리킬 수도 있습니다.master/main 또는 그렇지 않을 수 있습니다(현재 체크아웃된 분기를 가리킵니다).만약 당신이 약속하고 싶은 것을 안다면.master/main가지를 치고 여기로 밀어요.

다음은 시각적인 예입니다.

alt text

사용자의 저장소에서 다음 위치를 확인할 수 있습니다.HEAD는 다음을 실행하여 가리킵니다.

$ git symbolic-ref HEAD
refs/heads/master

하지만, 어디에 있는지 알아내는 것은.remotes/origin/HEAD가 가리키는 것은 원격 컴퓨터에 있기 때문에 더 까다롭습니다.

여기 git 참조에 대한 훌륭한 작은 튜토리얼이 있습니다.

간단한 대답은HEAD현재 사용 중인 분기의 가장 최근 커밋에 대한 포인터/라벨입니다. masterGit 저장소를 초기화할 때 생성되는 기본 분기입니다(예:git init).

삭제할 수 있습니다.master가지(예:git branch -D master). 삭제할 수 없습니다.HEAD포인터

현재 분기의 변경 사항을 푸시하기만 하면 됩니다.

git push origin

그리고 그것은 당신의 가지를 밀어낼 것입니다.B변경 사항:origin/B'.
사용 중인 경우masterbranch, git이 푸시할 것입니다.origin/master.
실제로 일치하는 원격 분기가 있는 로컬 분기의 모든 변경 사항을 다음 위치에 푸시합니다.origin구성 설정 push.default에 의해 제어됩니다.
Pro Git 책에서 RefSpec 푸시하기를 참조하십시오.


지금 보시는 것은 GitX 프로젝트의 Experimental GitX 포크에 있는 원격 저장소의 모든 refspec을 나타내는 사이드바입니다.

alt text

HEAD이 원격의 기본 분기를 지정합니다.
관리 페이지 참조:

원격에 대한 기본 분기가 필요하지 않지만 특정 분기 대신 원격 이름을 지정할 수 있습니다.
예를 들어, 다음에 대한 기본 분기origin으로 설정됨master,그리고나서origin일반적으로 지정하는 곳이라면 어디든 지정할 수 있습니다.origin/master.

언급URL : https://stackoverflow.com/questions/4386959/difference-between-head-and-master-or-main

반응형