리모트 서버에서 특정 브랜치를 꺼냅니다.
칩시다.xyz
해야 xyz
원격 서버(예: GitHub)에서 기존 브랜치에 병합합니다.xyz
제역지 포포???
Push branchs to Git에 대한 답변은 "! [rejected]"라는 오류와 "non fastforward"를 나타냅니다.
그러나 에러 「![거부]」와 「빠르지 않다」가 표시된다.
Git은 브랜치 변경 사항을 현재 마스터로 병합할 수 없기 때문입니다. 지점을 master
싶다other-branch
다음 중 하나:
$ git pull origin other-branch
Git은 기본적으로 다음과 같은 작업을 수행합니다.
$ git fetch origin other-branch && git merge other-branch
아, 아, 아, 아.pull
...fetch
에 '아예'가 붙습니다.merge
,의 경우, 이의 경우pull
-ing, Git은 Marge만 합니다.other-branch
Fast Forward Merge를 실행할 수 있는지 확인합니다.빨리 감기 병합은 병합하려는 브랜치 헤드가 병합하려는 브랜치 헤드의 직계 하위 항목인 병합입니다.예를 들어, 이 기록 트리가 있는 경우 병합other-branch
merge가 합니다.
O-O-O-O-O-O
^ ^
master other-branch
단, 이것은 고속 전송 머지는 아닙니다.
v master
O-O-O
\
\-O-O-O-O
^ other-branch
문제를 해결하려면 먼저 리모트브런치를 가져옵니다.
$ git fetch origin other-branch
다음 분파로 master
))) 、 [ ] 、 [ ] 、 [ Merge Conflicts ]를 클릭합니다.
$ git merge origin/other-branch
# Fix merge conflicts, if they occur
# Add merge conflict fixes
$ git commit # And commit the merge!
브랜치를 하고, 한 브랜치를 합니다.git pull
이데올로기 때문에
git branch -f remote_branch_name origin/remote_branch_name
git checkout remote_branch_name
후자는 로컬 운영입니다.
또는 포킹에 관한 GitHub 문서와 더 잘 어울립니다.
git branch -f new_local_branch_name upstream/remote_branch_name
안전한 접근방식은 먼저 로컬브런치(xyz)를 작성한 후 리모트브런치를 로컬로 끌어당기는 것입니다.
# create a local branch
git checkout -b xyz
# make sure you are on the newly created branch
git branch
# finally pull the remote branch to your local branch
git pull origin xyz
리모트 브런치를 로컬브런치로 풀 수 있는 구문을 다음에 나타냅니다.
git pull {repo} {remotebranchname}:{localbranchname}
git pull origin xyz:xyz
가장 좋은 방법은 다음과 같습니다.
git checkout -b <new_branch> <remote repo name>/<new_branch>
git fetch
는 최신 브랜치 리스트를 가져옵니다.
, 이제 은 할 수 있습니다.git checkout MyNewBranch
완료:)
자세한 내용은 문서: git fetch를 참조하십시오.
문제를 완전히 이해하고 있는지는 모르겠지만, 기존 브랜치를 이렇게 꺼냅니다(적어도 나에게는 효과가 있습니다).
git pull origin BRANCH
이것은 오리진/브런치에서 로컬브런치가 생성되었다고 가정합니다.
말하면, GitHub에서 빼야 합니다.the-branch-I-want
:
git fetch origin
git branch -f the-branch-I-want origin/the-branch-I-want
git checkout the-branch-I-want
이것에 의해, 리모트 브랜치를 다른 브랜치로 통합하기 전에 취득할 수 있었습니다.
git fetch repo xyz:xyz
git checkout xyz
GitHub에서 브랜치를 꺼내기 위해 사용할 수 있습니다.
git checkout --track origin/the-branch-name
지점 이름이 정확히 동일한지 확인하십시오.
했다
git branch -f new_local_branch_name origin/remote_branch_name
대신
git branch -f new_local_branch_name upstream/remote_branch_name
@innaM in @ 。업스트림/이) 하지 않습니다.이 경우 '/remote_name'은 '/remote_remote_name'을 클릭합니다.는 하지 않았다git fetch origin
바와 , 대신 대체하여upstream
origin
츠키다
git pull <gitreponame> <branchname>
보통 코드에 repo만 할당되어 있다면 gitreponame이 원본이 됩니다.
git remote -v에서 repo 목록을 확인할 수 있는 것처럼 두 개의 repo를 작업하는 경우, 이것은 현재 코드에 할당된 repo의 수를 보여줍니다.
BranchName은 대응하는 gitreponame에 존재해야 합니다.
다음 두 명령을 사용하여 repo를 추가하거나 제거할 수 있습니다.
git remote add <gitreponame> <repourl>
git remote remove <gitreponame>
너도 할 수 있어
git pull -r origin master
Marge 경합이 있는 경우 수정
git rebase --continue
-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
이것은 더 깨끗한 역사로 이어질 것이다.주의: 이미 other-branch를 origin(또는 기타 리모트)으로 푸시한 경우 rebase 후 강제로 브랜치를 푸시해야 할 수 있습니다.
git push -f origin other-branch
로 시험해 볼 수 있다.
git branch -a
★★★★★★★★★★★★★★★★★」git fetch
최신 지점 목록을 가져옵니다.
git checkout theBranch
//합니다//지점에 접속합니다
git checkout -b "yourNewBranch"
// Branch」/「The Branch」에
이거면 되겠네요.
- 「」는 「」로컬브런치).
<remote_repo>
및 " " " 입니다.<remote_branch>
★★★★★★★★★★★★★★★★★★★★★★★★★★★★」
git pull <remote_repo> <remote_branch>
예.
git pull origin remote_master
- 서 「」는, 「」를 참조해 주세요.
<local_branch>
★★★★★★★★★★★★★★★★★★★★★★★★★★★★」
git pull <remote_repo> <remote_branch>:<local_branch>
예.
git pull origin remote_master:local_master
리모트에서 로컬로 새로운 브랜치를 도입하는 심플한 솔루션
원격 분기 가져오기
git fetch xyz
로컬로 그 지점으로 전환하다
git switch xyz
마지막으로 를 실행하여 로컬브런치에 xyz가 표시되는지 여부를 확인합니다.
git branch
로컬 사용자는 마스터브런치와 XYZ 브런치를 개별적으로 갱신해야 한다
이 게시물들 중 어느 것도 원래 질문에 답하지 않습니다!
리모트 서버(GitHub 등)에서 브랜치 xyz를 꺼내 로컬 리포에 있는 기존 브랜치 xyz에 결합하려면 어떻게 해야 합니까?Push branchs to Git에 대한 답변은 "! [rejected]"라는 오류와 "non fastforward"를 나타냅니다.
「Marge」를 하는 xyz
으로 xyz
저장소 브런치가 의 「 Branch」를 「interning.xyz
같은 리모트 브랜치로 「풀」을 실행합니다.심플!
git checkout xyz
git pull origin xyz
그런데 사용자가 에러를 냈어요!그 업데이트는 작동하지 않았어. 왜?
만약 이게 실패한다면, 그건 두 가지와는 아무 관련이 없다.xyz
원격 저장소 및 로컬 저장소의 분기를 병합할 수 없습니다.원격 저장소의 마스터 분기가 로컬 저장소에 없는 새 커밋으로 변경된 것 같습니다.Fast Forward 메시지는 아마도 다음 메시지가xyz
리모트 리포의 브랜치가 로컬리포를 갱신할 수 없습니다.xyz
로컬 repo가 먼저 리모트 repo에서 마스터 브랜치에 추가된 모든 변경을 가져올 때까지 브랜치합니다.
이는 다른 개발자가 리모트마스터 브랜치에 추가한 새로운 커밋 또는 변경일 수 있습니다.다른 개발자가 리모트마스터 브랜치에 추가한 변경은 다음 기본 설정을 다시 실행합니다.xyz
리모트 마스터의 새로운 커밋 헤드의 끝으로 이동합니다.로컬 repo 사용자는 마스터브런치 끝에 추가된 새로운 커밋이 없기 때문에 변경을 Marge할 방법이 없습니다.따라서 로컬 repo 사용자는 이 변경을 갱신할 수 없습니다.xyz
repo의 로컬 마스터 브런치가 merge로 업데이트될 때까지 기본 변경을 다시 지정합니다.pull
,첫번째.
먼저 로컬 마스터를 리모트마스터의 업데이트로 갱신합니다.pull
, 그 다음에, 를 사용해 주세요.xyz
분점pull
또...
git checkout master
git pull origin
git checkout xyz
git pull origin xyz
기억해, apull
그냥...fetch
그리고나서merge
리모트 레포에서 로컬 레포에 현재 주력하고 있는 브랜치의 레포까지.
언급URL : https://stackoverflow.com/questions/1709177/pull-a-certain-branch-from-the-remote-server
'source' 카테고리의 다른 글
시스템 변환그림그리기.아이콘에서 시스템으로Media.ImageSource (0) | 2023.04.24 |
---|---|
ASP에서 웹 앱의 기본 URL을 얻으려면 어떻게 해야 합니까?NET MVC? (0) | 2023.04.24 |
각도에서의 INPUT 요소에 대한 ngModel 내 파이프 사용 (0) | 2023.04.24 |
Eclipse에서 단일 JUnit 테스트 실행 (0) | 2023.04.24 |
bash에서 2개 이상의 어레이를 동시에 반복합니다. (0) | 2023.04.19 |