여러 브랜치가 있는 프로젝트가 있습니다. 이 브랜치를 GitHub로 푸시했는데, 이제 다른 사람이 프로젝트에서 작업하고 있으므로 GitHub에서 해당 브랜치를 가져와야 합니다. 마스터에서는 잘 작동합니다. 하지만 누군가 xyz
브랜치를 만들었다고 가정해 봅시다. GitHub에서 브랜치 xyz
를 가져와서 내 로컬 호스트
의 브랜치 xyz
에 병합하려면 어떻게 해야 하나요?
사실 여기에 답이 있습니다: https://stackoverflow.com/questions/1072261/push-and-pull-branches-in-git
하지만 오류가 발생합니다. [거부됨]과 <빨리 감기 없음>에 대한 내용이 있습니다.
다른 방법이 있나요?
>. 하지만 난 오류가 발생할 "! [거절됨] ". 그리고 뭔가 " 비사양 파르게 forward";
$ git pull origin other-branch
깃 (git) 는 기본적으로 이렇게 하면:
$ git fetch origin other-branch && git merge other-branch
즉, 'a' 는 '뒤에' 그냥 '당기십시오 페치할 병합해야'. 그러나, Git 는 'ing' 만 '이' if 다른 지점 병합해야 당기십시오 병합해야 빨리감기 수행할 수 있습니다. A 빨리감기 병합해야 는 병합해야 수장 시도할 수 있는 분기로의 합치겠습니까 는 하위 직접 머리를 브랜치 운영까지도 병합하려면. 예를 들어, '다음' 다른 지점 발생할 경우 이 역사를 트리에서만 병합합니다 빨리감기 병합해야 것이다.
O-O-O-O-O-O
^ ^
master other-branch
그러나 이 not 빨리감기 병합해야 될 것이다.
v master
O-O-O
\
\-O-O-O-O
^ other-branch
, 먼저 문제를 해결하지 페치할 원격 지점.
$ git fetch origin other-branch
그럼 바로 병합해야 현재 분기로의 (I& # 39, ll solaris. that& # 39 의 '마스터') 및 해결하십시오 병합해야 충돌:
$ git merge origin/other-branch
# Fix merge conflicts, if they occur
# Add merge conflict fixes
$ git commit # And commit the merge!
원격 지점을 명시적으로 추적하기만 하면 간단한 '지트 풀'만으로 원하는 작업을 수행할 수 있습니다:
git branch -f remote_branch_name origin/remote_branch_name
git checkout remote_branch_name
후자는 로컬 작업입니다.
또는 포크에 대한 깃허브 문서를 참조하는 것이 더 적합할 수도 있습니다:
git branch -f new_local_branch_name upstream/remote_branch_name
다음 명령을 사용하여 브랜치를 브랜치로 끌어올 수 있습니다.
git pull {repo} {remotebranchname}:{localbranchname}
git pull origin xyz:xyz
마스터 브랜치에 있을 때 먼저 다음과 같이 브랜치를 체크아웃할 수도 있습니다:
git checkout -b xyz
그러면 마스터 브랜치에서 새 브랜치인 "xyz;가 생성되고 바로 체크아웃됩니다.
그러면 됩니다:
git pull origin xyz
그러면 새 브랜치가 로컬 xyz
브랜치로 이동합니다.
git pull <gitreponame> <branchname>
일반적으로 다음 기트리폰임 대입된 리포 경우에만 코드에 될 수 있다.
에 있는 프란치나미 .해당 기트리폰임 한다.
git remote add <gitreponame> <repourl>
git remote remove <gitreponame>
할 수도 있습니다.
git pull -r origin master
경우 충돌함 병합해야 수리입니다.
git rebase --continue
boot-r 캐비닛용입니다 리베이스. 이렇게 하면 무리는너희들이 분기로의 의 구조
v master
o-o-o-o-o
\o-o-o
^ other branch
수
v master
o-o-o-o-o-o-o-o
^ other branch
이 깔끔한 '으로 이어질 수 있다. 참고: 이미 있는 경우 (또는 다른 원격) 을 클릭하면 해당 다른 지점 끼워졌는지 인력용 누름식 너회의 분기로의 리베이스 후 할 수 있습니다.
git push -f origin other-branch
I did
git branch -f new_local_branch_name origin/remote_branch_name
대신
git branch -f new_local_branch_name upstream/remote_branch_name
권고하는 대로 @innaM. When I & # 39, 치명적인 업스트림입니다 사용한 버전 밝혔다. 잘못된 천체명: # 39, & # 39, & # 39, upstream/remote_branch_name&. 깃 (git) '으로' 내가 그 일을 하지 않았을 뿐만 아니라 단순히 페치할 셀명 제안됩니다 재장착하여 업스트림입니다 '을 (를)' '그'. 이들은 avamer 것 같아요.