programing

Git에서 오리진/마스터와 오리진 마스터의 차이점은 무엇입니까?

skycolor 2023. 5. 7. 11:18
반응형

Git에서 오리진/마스터와 오리진 마스터의 차이점은 무엇입니까?

알아요, origin은 원격 저장소의 용어이고 master는 그곳의 분기입니다.

저는 일부러 여기서 "콘텍스트"를 생략하고 있으며 답변이 콘텍스트에 의존하지 않기를 바랍니다.git 명령행에서 origin/master와 origin master의 차이점은 무엇입니까?오리진/마스터를 언제 사용해야 하는지, 오리진 마스터를 언제 사용해야 하는지 명확하게 이해할 수 있는 방법이 있습니까?

(참고: 이 질문이 처음 게시되었을 때 Git의 분기에 대한 기본 이름은 "master"였습니다.이제 "main"이 기본 이름이기 때문에, Git을 처음 접하는 사람들에게 이것이 더 자연스러울 것이라는 기대에서 이 대답은 "main"을 사용하도록 업데이트되었습니다.)

세 : 여에는실세가있지습다니가제로기있다▁there.origin main는 두 의 별개의이고, 두개의별것이고의개그, 고리▁is고,▁two그.origin/main별개의 일입니다.총 세 가지입니다.

두 개의 분기

  • main입니다.
  • origin/main원격 추적 분기("main"이라는 원격 이름의 "main"이라는 분기의 로컬 복사본)입니다.

리모컨 1개:

  • origin는 원격 .

오리진/메인이 원격입니까?

origin/main지점이 로컬입니다!언제든지 당신이 올 때.origin,origin/main업데이트됩니다. 하만지,origin/main시대에 뒤떨어질 수도 있고, 심지어 가능성도 있습니다.main에 더 이상 .origin당신은 할 수 .--pruneoption(-p)와 함께git fetch원격 추적 분기가 삭제된 경우 원격 추적 분기를 자동으로 삭제합니다.

origin/main분기는 에 대한 참조 또는 포인터가 아닙니다.main에 대한 분기점.origin로컬 복사본입니다.

예: 두 단계로 당김

때부터origin/main분기이므로 병합할 수 있습니다.다음은 두 단계로 구성된 작업입니다.

fetch 1(으), 단(으)로 이동합니다.main 먼치서에서.origin.main에 대한 분기점.origin은 로컬복을가로컬복사이지다정니됩름이의본져로 됩니다.origin/main.

git fetch origin main

그런 다음 병합합니다.origin/main안으로main.

git merge origin/main

그런 다음 새 변경 사항을 에 적용할 수 있습니다.main로 돌아가다.origin:

git push origin main

기타 예제

이름별로 여러 분기를 가져올 수 있습니다...

git fetch origin main stable oldstable

여러 분기를 병합할 수 있습니다...

git merge origin/main hotfix-2275 hotfix-2276 hotfix-2290

다른 이름을 사용할 수 있습니까?

내 지역 지점의 이름을 지정할 필요가 없습니다.main내가 원하지 않는다면요.원격 지점과 이름이 같을 필요는 없습니다!예를 들어 지점 이름을 지정하고 싶습니다.alice하지만 여전히 그것을 추적하고 있습니다.origin/main:

충분히 쉽게 할 수 있습니다.

git checkout -b alice --track origin/main

로컬 지점의 이름이 다음과 같이 지정된 것을 확인할 수 있습니다.alice은 하만원지이름은의점격입니다.main는 고현지사본은그입니다.origin/main이것은 완전히 괜찮습니다!조금 헷갈릴 수도 있지만 이미 다른 지점의 이름을 가지고 있을 수도 있습니다.main다른 변경 작업을 수행하려면 다른 지점으로 전환해야 합니다.

origin/master물리적 분기가 아니므로 상태를 나타내는 엔티티입니다.master 리콘의치에 지점origin.

origin master입니다.master 원으격로 있는▁on▁the.origin.

다음과 같은 이점이 있습니다.

  • origin/master(원격 분기에 대한 표현 또는 포인터)
  • 마스터 - (분기 표시)
  • <당신의_local_branch>(실제 지점)
  • <당신의_local_branch2>(실제 지점)
  • <당신의_local_branch3>(실제 지점)

브랜치 ▁local로▁branch)master):

git fetch # get current state of remote repository
git merge origin/master # merge state of remote master branch into local branch
git push origin master # push local branch master to remote branch master

origin/master 리입니입니다.master

에를 한 .git fetch origin서버에서 모든 변경사항을 가져오려면 다음 작업을 수행합니다.git rebase origin/master변경사항의 기본값을 변경하고 분기를 최신 인덱스로 이동합니다.여기서,origin/master분기를 다시 사용하도록 지시하는 분기를 말합니다.origin/master현재 지점으로 분기합니다.

사용할 수 있습니다.origin master예를 들어, 밀 때. git push origin master "GIT"를 원격 저장소로 입니다.master분점.

origin은 원격 giturl의 이름입니다.아래에는 더 많은 원격 사례가 있을 수 있습니다.

방갈로르 => bangalore.example.com:project.git
보스턴 => boston.example.com:project.git

오리진/마스터(방갈로르/마스터)에 관한 한, 방갈로르 사이트의 "마스터" 커밋에 대한 포인터입니다.클론에서 볼 수 있습니다.

원격 방갈로르가 "fetch" 또는 "pull"을 수행한 후 진행되었을 수 있습니다.

신이전환수있사때고려실할을는다로 전환할 수 을 고려하면,origin/master이지만) 에서는 (으).master로 가지를 치다.origin.

차이로 가기 전에 우리는 Git에서 기원의 의미가 무엇인지 이해할 필요가 있습니다.

origin은 원격 리포지토리에 지정된 원래 이름에 불과합니다.기원은 단지 장소일 뿐입니다.아래 예제에서 리포지토리 URL은 코드가 있는 위치의 원본 또는 원본입니다.

git clone https://github.com/mycode/git-awsomecode.git

이제 이 출처 또는 진실의 출처는 저장소에 마스터 또는 개발 또는 사용자 이름을 포함하는 분기를 가질 수 있습니다.

이제 우리는 아래와 같은 의미에서 쉽게 유래할 수 있습니다.

  1. 오리진 마스터:저는 (오리진)이라는 원격 저장소에 상주하는 마스터 브랜치입니다.

git pull origin master를 입력하면 어떻게 됩니까?

로컬 마스터 분기(로컬 컴퓨터)가 로컬 마스터 분기(즉, 오리진 마스터)에서 사용할 수 있는 모든 변경 사항을 업데이트합니다.

이제 변경 사항을 로컬 마스터 지점과 통합하고 싶습니다. 어떻게 해야만 이를 달성할 수 있을까요?

git 병합 오리진/마스터

변경사항으로 로컬 마스터 분기가 업데이트됩니다.오리진/마스터를 사용하는 이유는 로컬 마스터 분기 오리진/마스터 또는 abcd에 이름을 지정할 수 있는 명명 규칙 때문입니다.따라서 단순히 마스터하기 위해 origin/master 대신 로컬 브랜치로 이름을 지정할 수 있으며 git 명령어는 git 병합 마스터가 됩니다.

모든 로컬 변경사항을 사용하여 원격 마스터 분기를 어떻게 업데이트합니까?

git 푸시 오리진 마스터

이 명령은 모든 로컬 변경 사항을 오리진(즉, 저장소(https://github.com/mycode/git-awsomecode.git)) 를 마스터 분기로)으로 전송하라는 것입니다.

해당 명령으로 개발 및 마스터를 병합하는 것이 좋습니다.

git checkout master

git merge --commit --no-ff --no-edit develop

자세한 내용은 https://git-scm.com/docs/git-merge 을 참조하십시오.

언급URL : https://stackoverflow.com/questions/18137175/in-git-what-is-the-difference-between-origin-master-vs-origin-master

반응형