자식을 가져옵니다
질문
내 동료와 나는 같은 저장소에서 일하고 있습니다.우리는 서로 다른 프로젝트를 위해 각기 기술적으로 기술적으로 두 가지 분기로 분기했지만 유사점을 가지고 있으므로 때로는 분기에서 * 마스터로 되돌아 가고 싶습니다.
그러나 나는 지점이있다.제 동료는 어떻게 그 지점을 자랑 할 수 있습니까?
저장소의 Git Clone은 그를 위해 지역에서 지점을 만드는 것처럼 보이지 않습니다.
또한 원래 지점을 만들었을 때 나는 -b 결제를했습니다.그게 많은 차이가 있니?
$ git branch -r
origin/HEAD -> origin/master
origin/daves_branch
origin/discover
origin/master
$ git fetch origin discover
$ git checkout discover
이것들은 내가 실행 한 명령입니다.그러나 그것은 분명히 작동하지 않습니다.
그 분기를 확인하고 다양한 공동 작업자 또는 워크 스테이션에서 가지 변경 사항을 푸시하고 커밋 할 수 있습니다.
답변
업데이트 : Git 스위치 사용
아래에 쓰여진 모든 정보는 정확했지만 새로운 명령은 노력을 단순화하는 Git 스위치가 추가되었습니다.
DAVES_Branch가 원격 저장소에 있지만 로컬 지점에 없지만 단순히 다음을 입력 할 수 있습니다.
git switch daves_branch
지점이 로컬로 없으므로 자동으로 원격 REPO에서 스위치를 보게됩니다.그런 다음 자동으로 원격 분기 추적을 설정합니다.
daves_branch가 로컬로 존재하지 않으면 스위치를 사용하기 전에 먼저 FETCH를 먼저 사용할 필요가 있습니다.
원래 게시물
원격 분기를 추적하는 로컬 지점을 만들어야합니다.다음 명령은 원격 분기 Origin / Daves_Branch를 추적하는 daves_branch라는 로컬 지점을 만듭니다.변경 사항을 누르면 원격 분기가 업데이트됩니다.
가장 최근의 Git 버전의 경우 :
git checkout --track origin/daves_branch
- 트랙은 Git Checkout -b [Branch] [RemoteName] / [RemoteName] / [RemoteName] / [Rang]이 경우 [RemoteName] / [Branch]는이 경우에 두 배,이 경우 Daves_Branch가 두 배입니다.
Git 1.5.6.5의 경우 :
git checkout --track -b daves_branch origin/daves_branch
GIT 1.7.2.3 이상을 위해 이는 충분합니다 (이전에 시작했을 수도 있지만 이것은 내가 빨리 찾을 수있는 초기 확인입니다) :
git checkout daves_branch
최근 Git 버전 에서이 명령은 로컬 지점을 만들지 않고 '분리 된 헤드'상태로 설정합니다.로컬 지점을 원한다면 -track 옵션을 사용하십시오.
자세한 내용은 다음과 같습니다. 3.5 Git Branching - 원격 분기, 추적 지점
답변
나는 체크 아웃을 사용하여 가져 오기를 사용했습니다 ...
git fetch <remote> <rbranch>:<lbranch>
git checkout <lbranch>
...
Git은 Smart Smart Remote Branch의 처음 몇 글자 뒤에 탭이있는 경우 자동 명령을 완료합니다.즉, 나는 로컬 지점의 이름을 지르지 않아도됩니다. Git은 자동으로 원격 지점의 이름을 복사합니다.고마워 git!
또한이 유사한 스택 오버플로 게시물에 대한 답변으로 인해 로컬 지점을 가져 오지 않으면 -b 플래그를 사용하여 확인할 때 여전히 생성 할 수 있습니다.즉, git fetch
나는 가져 오기를위한 일부 문서 중 일부가 끌어 당기는 것으로 판단되었다고 믿습니다.특히
참고 : git fetch
나는 이것이 원격 지점을 로컬로 복사하려는 경우에만 유용합니다.그렇지 않으면, 이제는 한 라이너이기 때문에 체크 아웃 설명의 첫 번째 섹션에 대해 자세히 설명하는 수락 된 답변을 사용합니다.음 ... 당신이 여전히 git fetch
FYI :
답변
새 리모트 브랜치 (리모컨에만 있지만 로컬에서만 존재하지만) "체크 아웃"을 시도하는 경우 여기에 필요한 것입니다.
git fetch origin
git checkout --track origin/<remote_branch_name>
이것은 원본에서 가져 오기를 원한다고 가정합니다.그렇지 않은 경우 원격 이름으로 원본을 교체하십시오.
답변
MyBranch가 원격으로 존재하는 MyBranch를 체크 아웃하는 것은 나를 위해 일했습니다.
git fetch --all
git checkout myBranch
나는이 메시지를 얻었다 :
Branch myBranch set up to track remote branch myBranch from origin
Switched to a new branch 'myBranch'
답변
지점을 로컬로 가져 오십시오.
git fetch origin <branchName>
그 가지로 이동하십시오 :
git checkout <branchName>
답변
Git Branch (로컬 및 원격 지점) 또는 Git Branch (원격 지점 만) 또는 그 지점을 모두 볼 수 있습니다.그런 다음 Git Checkout -t RemoteS / Repo / Branch를 원격으로 수행하고 로컬 분기를 만듭니다.
또한 리모컨의 모든 Ref 및 태그를 볼 수있는 git-ls-remote 명령이 있습니다.
출처:https://stackoverflow.com/questions/9537392/git-fetch-remote-branch
최근댓글