원격 Git 브랜치를 어떻게 확인합니까?


6711

누군가라는 지점 밀려 test와를 git push origin test공유 저장소에. 로 지점을 볼 수 있습니다 git branch -r.

이제 원격 test지점 을 확인하려고합니다 .

난 노력 했어:

  • git checkout test 아무것도하지 않습니다

  • git checkout origin/test제공합니다 * (no branch). 혼란 스럽습니다. "지점 없음"에 어떻게 참여할 수 있습니까?

원격 Git 브랜치를 어떻게 확인합니까?


9
@inger 그러나 새 로컬 브랜치의 이름을 바꿀 가능성은 포함되어 있지 않습니다 (나중에 설정하고 일관성을 유지하려는 경우)
fachexot

15
이 스레드는 도움이되지 않는다고 생각합니다. 아무것도 효과가없는 것 같습니다. 원래 질문은 많은 답변에서 잃어버린 것 같습니다. 나는 모든 단어를 읽고 아래의 모든 것을 시도했으며 OP가 원하는 것을 수행하는 방법을 모릅니다.
Tony Ennis

6
힘내 명령은 직관적으로 시작하지 않습니다, 믹스에 최신 버전으로 도입 된 변경 사항을 추가하고이 페이지가 있습니다 ...
Christophe Roussy

14
나는 약을 먹는 것 같은 느낌이 든다. 나는에서 분기를 체크 아웃하려고 해요 upstream단지, origin그리고 모든 권장 대답은 원격으로 도움 (말장난 의도) 아무것도하지 않습니다. 편집 -실례합니다. 상위 2 답변에 포함 된 수많은 제안은 쓸모가 없었습니다. 세 번째 것 ( git branch test origin/test)이 효과가 있습니다. 기꺼이 탑 2는 투표 수의 20 배에
달한다

4
작업 트리에 'test'라는 파일이있을 수 있습니다 . 자세한 내용은 stackoverflow.com/a/45006389/792416 을 참조하십시오 .
oldman

답변:


9150

최신 정보

야 쿠브의 대답은 실제로 이것에서 개선됩니다. Git 버전이 ≥ 1.6.6 인 경우 리모콘이 하나만 있으면 다음을 수행 할 수 있습니다.

git fetch
git checkout test

사용자 masukomi가 주석에서 지적한 것처럼 git checkout test여러 리모컨이 있으면 최신 git에서 작동하지 않습니다. 이 경우 사용

git checkout -b test <name of remote>/test

또는 속기

git checkout -t <name of remote>/test

기존 답변

원격 브랜치에서 로컬로 작업을 시작하기 전에 아래 답변에 나와있는대로 가져와야합니다.

지점을 가져 오려면 다음을 수행하면됩니다.

git fetch origin

이것은 당신을 위해 모든 원격 브랜치를 가져옵니다. 다음을 통해 결제에 사용할 수있는 지점을 확인할 수 있습니다.

git branch -v -a

원격 지점을 보유한 경우 이제 관심있는 지점을 확인하여 로컬 작업 사본을 제공해야합니다.

git checkout -b test origin/test

398
이것을 확장하려면 : git을 사용하면 다른 사람의 지사에서 일할 수 없습니다. 혼자서만 일할 수 있습니다. 따라서 다른 사람의 지점에 추가하려면 해당 지점의 "복사본"을 작성해야합니다. 이는 위의 명령이 수행하는 작업입니다.
Dan Molding

139
만약 그것이 새로운 원격 브랜치라면 git fetchgit이 알기 위해 이것을하기 전에 해야 할 수도 있습니다origin/test
Neil Sarkar

56
... 그리고 당신은 이것을 할 것입니다git fetch origin test
Andrew

22
오류 : "git checkout : 경로 업데이트가 분기 분기와 호환되지 않습니다. origin/test커밋으로 해결할 수없는 체크 아웃 을 하시겠습니까?"
Xeoncross

85
git checkout test같은 브랜치 이름을 가진 리모트가 여러 개인 경우 현대 git에서는 작동하지 않습니다 . 어느 것을 사용 해야할지 알 수 없습니다.
masukomi

1256

참고 사항 : 최신 Git (> = 1.6.6 )을 사용하면

git checkout test

마법의 DWIM- mery 를 수행 하고 로컬 분기 'test'를 만드는 것은 업스트림이 원격 추적 분기 'origin / test'가 될 것입니다 ( 'origin / test'가 아니라 'test'입니다).


* (no branch)에서 git branch출력 수단 당신은 소위 "분리 된 HEAD"상태 (HEAD 포인트는 직접 커밋, 일부 지역 지점에 대한 기호 참조하지하는) 이름이 지점에 있는지. 이 명명되지 않은 브랜치에서 커밋을 한 경우 항상 현재 커밋에서 로컬 브랜치를 만들 수 있습니다.

git checkout -b test HEAD

** 편집 ( 작성자가 아닌 편집자 ) **

이 답변을 현대화하는 것으로 보이는 아래에 묻힌 주석을 발견했습니다.

@Dennis : git checkout, 예를 들어 git checkout origin / test는 분리 된 HEAD / unnamed 브랜치를 생성하는 반면, git checkout test 또는 git checkout -b test origin / test는 로컬 브랜치 테스트를 수행합니다 (원격 추적 브랜치 origin / test를 업스트림으로 사용) ) – Jakub Narębski 1 월 9 일 14시 8:17

강조 git checkout origin/test


33
놀랍지 않지만이 버전은 지난 몇 년 동안 출시되었습니다.이 구문을 알면 여전히 오래된 문서와 주석 스레드가 많이 남아 있기 때문에 많은 시간을 절약 할 수 있습니다.
커티스

10
"modern git"-레코드에 대해 (약) 어떤 버전을 언급하고 있습니까? 때때로 우리는 오래된 배포판을 실행하는 시스템에서 작업해야합니다.
Craig McQueen

5
이 맥락에서 "현대 자식"은 자식 1.6.6
Bobby Norton

10
@aidan error: pathspec 'branch_name' did not match any file(s) known to git.다음 과 같은 응답을 받으면 먼저 git fetch를 수행해야합니다.
Dennis

6
git 버전 1.8.3.msysgit.0을 사용하면 이것이 작동하지 않습니다-git으로 알려진 파일과 일치하지 않습니다-많은 git 페치를 수행했습니다.
PandaWood

564

이 경우 test원격 test지사를 추적 하는 로컬 지사 를 만들고 싶을 것입니다 .

$ git branch test origin/test

의 이전 버전에서는 git명시적인 --track옵션 이 필요 했지만 이제 원격 지점에서 분기 할 때 이것이 기본값입니다.


15
전환하지 않고 로컬 브랜치를 만듭니다.
Alex Skrypnyk

2
치명적이지만 모호한 객체 이름 : 'origin / dev'-원점의 'dev'분기가 가장 확실하게 존재하지만 실수로 내 컴퓨터에 "origin / dev"라는 분기를 만들었습니다 (이전의 어리석은 시도에서 의심 할 여지없이이 권리를 얻으려면) ... ouch
PandaWood

1
이로 인해 오류 오류가 발생했습니다. 일부 참조를 힌트로 푸시하지 못했습니다. 푸시 한 분기 팁이 원격 힌트 뒤에 있기 때문에 업데이트가 거부되었습니다. 이 분기를 확인하고 다시 변경하기 전에 원격 변경 힌트 (예 : 'git pull')를 병합하십시오. 힌트 : 자세한 내용은 'git push --help'에서 '앞으로 가기에 대한 참고 사항'을 참조하십시오.
pal4life 2016 년

475

수락 된 답변 이 효과가 없습니까?

첫 번째 답변과 선택된 답변은 기술적으로 정확 하지만 원격 저장소에서 모든 객체와 참조를 아직 검색하지 않았을 가능성이 있습니다. 이 경우 다음과 같은 오류가 발생합니다.

$ git checkout -b remote_branch origin/remote_branch

치명적 : git checkout : 경로 업데이트는 분기 분기와 호환되지 않습니다.
커밋으로 해결할 수없는 'origin / remote_branch'를 체크 아웃하려고 했습니까?

해결책

이 메시지가 표시되면 먼저 실행하기 전에 원격 저장소의 이름 인 git fetch originwhere를 수행해야합니다 . 응답이 포함 된 전체 예는 다음과 같습니다.origingit checkout remote_branch

$ git fetch origin
remote: Counting objects: 140, done.
remote: Compressing objects: 100% (30/30), done.
remote: Total 69 (delta 36), reused 66 (delta 33)
Unpacking objects: 100% (69/69), done.
From https://github.com/githubuser/repo-name
   e6ef1e0..5029161  develop    -> origin/develop
 * [new branch]      demo       -> origin/demo
   d80f8d7..359eab0  master     -> origin/master

$ git checkout demo
Branch demo set up to track remote branch demo from origin.
Switched to a new branch 'demo'

보시다시피, 실행하면 git fetch origin로컬 컴퓨터에서 추적하도록 아직 설정하지 않은 원격 지점을 검색했습니다. 이제 원격 지점에 대한 참조가 있으므로 간단하게 실행할 수 있으며 git checkout remote_branch원격 추적의 이점을 얻을 수 있습니다 .


2
로컬에 별도의 분기가있는 경우 메모를 추가합니다. 'git remote add origin [the_path_to_your_repo / repo_name.git]'을 사용하여 원격 저장소와이를 연결했는지 확인하십시오. 그런 다음 'git fetch origin'을 사용하십시오. 여기서 'origin'은 연관시킨 오리진 저장소를 의미합니다.
elliotrock

git checkout -b newbranch또한 현재 브랜치를 기반으로 새 브랜치를 1 단계 생성 및 체크 아웃하는 데 효과적입니다.
Linus

2
나는 이것이 가장 최신이라고 생각합니다 ($ @ #!가 계속 바뀌고 있습니다!). Git 2.5.5 나는 실제로 원격 브랜치를 보는 유일한 방법을 발견했으며 실제로 git ls-remote그것을 사용하는 유일한 방법은 git checkout -b [branch] --track [remote/branch]... 그리고 그 후에 git pull [remote] [branch] 는 일을 마쳤다. 즉, 실제로 전체 분기를 가져 왔지만 여전히 나열하지는 않았습니다.
delicateLatticeworkFever

이 대답 중 하나가 작동하지 않을 때, 볼 이 하나 .
EIS

추가하기 만하면 git fetch other_remote only_branch여전히 fatal오류가 발생합니다. 당신은에있는 git fetch other_remote지점 이름없이. 이상한 디자인.
est

258

위의 솔루션을 시도했지만 작동하지 않았습니다. 이것을 시도하십시오, 그것은 작동합니다 :

git fetch origin 'remote_branch':'local_branch_name'

이것은 원격 브랜치를 가져오고 이름으로 새로운 로컬 브랜치를 생성하고 (아직 존재하지 않는 경우) 원격 브랜치를 local_branch_name추적합니다.


37
이것은 git fetch origin이나 git remote update가 로컬 브랜치를 생성하지 않을 때 효과적이었습니다. 왜 그런지 잘 모르겠습니다.
대장장이

4
이것은 내가 필요로하는 것을 달성하는 가장 직접적인 방법이었습니다. 마스터가 아닌 원격 지점을 사용하여 새 지점을 만드는 것이 었습니다.
Roralee

7
특히 여러 분기가있는 원격에서 단일 분기를 복제 한 경우 원활하게 작동했습니다.
Alex C

7
이것은 나에게도 도움이되었으며, 대답이 받아 들여지고 다른 높은 투표가 이루어지지 않았습니다. 내 자식 버전은 2.5.0입니다
pdepmcp

5
다른 모든 것이 작동하지 않을 때 왜 이것이 작동하는지 아는 사람이 있습니까? (나는 git 2.13.0에있다)
Nathan Arthur

108

이것은 이름이 지정되지 않은 원격 ( documentation )의 DWIM 입니다 .

$ git checkout -t remote_name/remote_branch

새 리모컨을 추가하려면 먼저 다음을 수행해야합니다.

$ git remote add remote_name location_of_remote
$ git fetch remote_name

첫 번째는 Git에 원격이 있음을 알리고 두 번째는 커밋을 가져옵니다.


104

사용하다:

git checkout -b <BRANCH-NAME> <REMOTE-NAME>/<BRANCH-NAME>

내 양성의 경우 현대적인 Git에서는 다른 답변이 작동하지 않습니다. 원격 지점이 새로운 경우 먼저 당겨야 할 수도 있지만 그 경우는 확인하지 않았습니다.



14
지금 보면 그것들이 겹칩니다. 나의 것만이 간결하며 이야기를하기보다는 무엇을해야하는지 알려줍니다. 따라서 특히 요즘 git 버전에서 더 유용 할 수 있다고 가정합니다. 당신이 나쁜 대답이라고 생각하면 그것을 공감할 수 있습니다.
matanster

1
git fetch는 안전한 옵션입니다. pull을 사용하기 전에 가져 오기를 시도하십시오. 둘 다 원격 컨텐츠를 다운로드하지만 가져 오기는 로컬 상태를 변경하지 않지만 pull은 즉시 로컬 상태를 변경합니다.
Peter Szalay

89

좋아요 , 대답은 쉽습니다 ... 당신은 기본적으로 지점을 볼 수 있지만 아직 로컬 사본이 없습니다! ...

당신 fetch은 지점에 필요합니다 ...

간단히 브랜치를 가져오고 체크 아웃 할 수 있습니다. 아래 한 줄 명령을 사용하여 그렇게하십시오.

git fetch && git checkout test

차이점을 공유하고 fetch작동 방식과 차이점을 살펴볼 수 있도록 아래 이미지를 만들었습니다 pull.

자식 가져 오기


@DmitriZaitsev 예, 원격 분기가 있으면 작동하고 가져 오기를 수행하면 로컬로 분기를 가져옵니다 ... git fetch && git checkout test. 따라서 원격 분기가 없으면 작동합니다. 질문은 이미 원격 지점이있다 ...
Alireza

내가 질문을 test보는 방식은 새로운 지점처럼 보이므로 현지에 존재하지 않을 것입니다. 그렇지 않으면 단일 git pull명령으로 더 쉽게 당길 수 있습니다.
Dmitri Zaitsev

@DmitriZaitsev, 그렇습니다. git fetch라고 말한 이유입니다. 방금 만든 원격 브랜치를 확인하고 풀로 인해 원치 않는 다른 항목을 가져올 수 있지만 fetch는 로컬에 이미 리포지토리가있는 경우 모든 브랜치를 사용할 수있게합니다 ...
Alireza

가져온 사본을 변경 하지 fetch않고 pull로컬 브랜치는 변경하지 않으면 로컬 브랜치가 최신 상태가되지 않습니까?
Dmitri Zaitsev

56

Git 리포지토리를 복제하려면 다음을 수행하십시오.

git clone <either ssh url /http url>

위의 명령은 모든 분기를 체크 아웃하지만 master분기 만 초기화됩니다. 다른 지점을 체크 아웃하려면 다음을 수행하십시오.

git checkout -t origin/future_branch (for example)

이 명령은 원격 지점을 체크 아웃하며 로컬 지점 이름은 원격 지점과 동일합니다.

결제시 로컬 지점 이름을 재정의하려는 경우 :

git checkout -t -b enhancement origin/future_branch

이제 로컬 지점 이름은 enhancement이지만 원격 지점 이름은 future_branch입니다.

선적 서류 비치


git clone <ssh url / http url>-나에게 완벽하게 작동
Kmeixner

그래 정확 해. 귀하의 정보에 감사드립니다. @warvariuc
Madhan Ayyasamy

리모컨에가 없으면 master작동하지 않습니다.
polkovnikov.ph

36

당신은 시도 할 수 있습니다

git fetch remote
git checkout --track -b local_branch_name origin/branch_name

또는

git fetch
git checkout -b local_branch_name origin/branch_name

2
참고로, 이전 답변--track 에서 설명한 것처럼 기본적으로 설정되어 있기 때문에 최신 버전의 git에는 더 이상 필요하지 않습니다 .

33

먼저 다음을 수행해야합니다.

git fetch # 지점 이름을 모른다면

git fetch origin branch_name

둘째, 다음을 통해 로컬로 원격 지점을 체크 아웃 할 수 있습니다.

git checkout -b branch_name origin/branch_name

-b 선택한 원격 지점에서 지정된 이름으로 새 지점을 만듭니다.


나는 이해하지 못한다 -b. "git checkout master"를 할 수 있다면 왜 "git checkout origin / test"를 할 수 없습니까?
John Little

원산지 / 마스터에서 온 새로운 지점의 경우 -b
Mohideen bin Mohammed

28

다음 명령을 사용합니다.

git checkout --track origin/other_remote_branch

13
이 방법을 사용하는 이유를 설명하면이 답변이 훨씬 유용합니다. 즉, 왜 누군가가 '-트랙'등을 사용해야합니까?
Matt Friedman

27

명령

git fetch --all
git checkout -b <ur_new_local_branch_name> origin/<Remote_Branch_Name>

같다

 git fetch --all

그리고

 git checkout -b fixes_for_dev origin/development

둘 다 latest fixes_for_dev에서development


24

지점이 origin리모컨 이외의 다른 곳에 있으면 다음을 수행하고 싶습니다.

$ git fetch
$ git checkout -b second/next upstream/next

이는 체크 아웃합니다 next상의 지점 upstream이라는 지역 지점에 원격을 second/next. 즉, next라는 로컬 지점이 이미 있으면 충돌하지 않습니다.

$ git branch -a
* second/next
  remotes/origin/next
  remotes/upstream/next


18

이 답변들 중 어느 것도 나를 위해 일하지 않았습니다. 이것은 효과가 있었다 :

git checkout -b feature/branch remotes/origin/feature/branch


1
감사. 명령을 호출 할 때 보았던 전체 경로 ( remotes / origin / feature / branch ) 를 사용 해야하는지 궁금 하지만 확실하지 않았으므로 방금 사용 했으며 작동하는 것처럼 보입니다. 메시지 :gitgit branch -agit checkout -b apps/FEATURE/branch origin/apps/FEATURE/branchBranch 'apps/FEATURE/branch' set up to track remote branch 'apps/FEATURE/epicBranch' from 'origin'. Switched to a new branch 'apps/FEATURE/branch'
Chris22

18

error: pathspec 'desired-branch' did not match any file(s) known to git.위의 모든 제안을 보고있는 상황에 처했습니다 . git 버전 1.8.3.1을 사용하고 있습니다.

그래서 이것은 나를 위해 일했습니다 :

git fetch origin desired-branch
git checkout -b desired-branch FETCH_HEAD

뒤에 나오는 설명은 원격 브랜치를 가져올 때 FETCH_HEAD로 페치되었음을 알았습니다.

$ git fetch origin desired-branch
From github.com:MYTEAM/my-repo
    * branch            desired-branch -> FETCH_HEAD

17

git checkout원격 지점의 이름으로 실행 하십시오. Git은 원격 지점을 추적하는 로컬 지점을 자동으로 만듭니다 .

git fetch
git checkout test

그러나 해당 분기 이름이 둘 이상의 원격에서 발견되면 Git이 사용할 것을 알 수 없으므로 작동하지 않습니다. 이 경우 다음 중 하나를 사용할 수 있습니다.

git checkout --track origin/test

또는

git checkout -b test origin/test

에서 2.19 , 힘내 학습 checkout.defaultRemote이러한 모호성을 해결하는 경우 기본적으로 원격을 지정 구성을.


16

git branch -r해당 분기 이름이 Git의 로컬 분기 목록에 없기 때문에 객체 이름이 유효하지 않습니다. 다음을 사용하여 출발지에서 로컬 지점 목록을 업데이트하십시오.

git remote update

그런 다음 원격 지점을 다시 확인하십시오.

이것은 나를 위해 일했습니다.

나는 원거리 포스터를 원치 않는 모든 원격 지점을 git fetch가져옵니다 .


2
참고로, git remote update 모든 원격 브랜치를 가져옵니다 .

13

git remote show <origin name>명령은 모든 분기 (추적되지 않은 분기 포함)를 나열합니다. 그런 다음 가져와야하는 원격 지점 이름을 찾을 수 있습니다.

예:

$ git remote show origin

원격 브랜치를 가져 오려면 다음 단계를 사용하십시오.

git fetch <origin name> <remote branch name>:<local branch name>
git checkout <local branch name > (local branch name should the name that you given fetching)

예:

$ git fetch origin test:test
$ git checkout test

@hallski는 2.15.1 버전에서 작동하지 않는다고 대답했지만 .git 파일 weigth clone 만 1 분기 및 필터 기록을 --depth 플래그로 줄였습니다. 예를 들어 $ git clone -b release --single-branch --depth 5 https://github.com/user/repo.git정보 $ git remote show origin가없는 경우 단일 브랜치 복제 저장소가있는 모든 원격 브랜치가 나열되지는 않습니다.
Qh0stM4N

10

리모콘에서 가져와 분기를 체크 아웃하십시오.

git fetch <remote_name> && git checkout <branch_name> 

예 :

git fetch origin && git checkout 기능 / XYZ-1234-Add-alerts


9

다른 남자들과 여자들은 해결책을 제시하지만 그 이유를 말해 줄 수 있습니다.

아무것도하지 않는 git checkout test

Does nothing같지 않으므로 doesn't work터미널에 'git checkout test'를 입력하고 Enter 키를 누르면 메시지가 나타나지 않고 오류가 발생하지 않습니다. 내가 맞아?

대답이 '예'인 경우 원인을 알려줄 수 있습니다.

작업 트리에 'test'라는 파일 (또는 폴더)이 있기 때문입니다.

git checkout xxx구문 분석,

  1. Git은 xxx처음에 지점 이름으로 보이지만 test라는 이름의 지점은 없습니다.
  2. 그런 다음 Git xxx은 경로 라고 생각 하며, 불행히도 (또는 불행히도) test라는 파일이 있습니다. 따라서 파일 git checkout xxx에서 수정 한 내용을 폐기해야 xxx합니다.
  3. 파일 이름이 없으면 xxxGit은 xxx일부 규칙에 따라 파일 을 만들려고 시도합니다 . 규칙 중 하나는 존재하는 xxx경우 이름이 지정된 분기를 작성하는 remotes/origin/xxx것입니다.

고맙습니다, 왜 자식이 아무것도하지 않는지 알아 내려고 노력했습니다.
Mike R

8

새로 만든 지점을 얻으려면

git fetch

다른 지점으로 전환하려면

git checkout BranchName

6

다음 Bash 스크립트를 사용하여 모든 원격 지점 추적을 시작할 수 있습니다.

#!/bin/bash
git fetch --all
for branch in `git branch -r --format="%(refname:short)" | sed 's/origin\///'`
  do git branch -f --track "$branch" "origin/$branch"
done

한 줄 버전도 있습니다 :

git fetch --all; for branch in `git branch -r --format="%(refname:short)" | sed 's/origin\///'`; do git branch --track "$branch" "origin/$branch" ; done ;

5

git checkout -b "Branch_name"[B는 로컬 브랜치를 생성 함을 의미합니다]

자식 분기-모두

자식 체크 아웃 -b "당신의 지점 이름"

자식 지점

마스터 브랜치에서 dev 브랜치로 성공적으로 체크 아웃

여기에 이미지 설명을 입력하십시오


git checkout -b "Branch_name"[B는 로컬 브랜치를 생성 함을 의미]
Keshav Gera

3

모든 원격 브랜치를 사용하려면 다음을 사용하십시오.

git fetch --all

그런 다음 지점으로 체크 아웃하십시오.

git checkout test

2

fetch모든 리모컨을 당기는 데 사용

   git fetch --all

원격 브랜치를 나열하려면 :

   git branch -r

모든 지점을 나열하려면

   git branch -l
   >>outpots like-
     * develop
       test
       master

지점을 체크 아웃 / 변경하려면

   git checkout master

시도했지만 git branch -l원격 지점이 표시되지 않았습니다.
Dmitri Zaitsev 2016 년

사용 git pull --all또는git fetch --all
나시르 칸

예, 그 후에도 git branch -l 여전히 현지 지점 만 표시합니다 . 그것 git branch없이 정확히 작동하는 것 같습니다 -l, 그 이유는 -l무엇입니까?
Dmitri Zaitsev 2016 년

또한 귀하의 답변이 질문에 대답하지 않습니다- master원격 지점이 아닙니다.
Dmitri Zaitsev 2016 년

-l리스트를위한 플래그. 당신은 사용할 수 --list
나시르 칸

2

우리에게는 remote.origin.fetch구성에 문제가있는 것 같습니다 . 따라서, 우리는보다 다른 원격 지점을 볼 수 master있도록, git fetch [--all]도움이되지 않았다. 어느 쪽 git checkout mybranchgit checkout -b mybranch --track origin/mybranch그것을 확실히 원격에서 있었지만, 일을하지 않았다.

이전 구성 만 master가져올 수 있습니다.

$ git config --list | grep fetch
remote.origin.fetch=+refs/heads/master:refs/remotes/origin/master

*원산지에서 새 정보를 사용 하고 가져 와서 수정하십시오 .

$ git config remote.origin.fetch '+refs/heads/*:refs/remotes/origin/*'

$ git fetch
...
 * [new branch] ...
...

이제 우리 git checkout는 원격 지점을 로컬로 할 수있었습니다 .

이 설정이 로컬 리포지토리에서 어떻게 끝났는지 모르겠습니다.


1
내가 단일 지점
Pontus Holmbom

2

원격 브랜치 이름이 특수 문자로 시작하면 checkout 명령에서 작은 따옴표를 사용해야합니다. 그렇지 않으면 git은 어떤 브랜치에 대해 알지 못합니다.

예를 들어,로 이름이 지정된 원격 지점을 체크 아웃하려고했지만 #9773아래 그림과 같이 명령이 제대로 작동하지 않았습니다.

여기에 이미지 설명을 입력하십시오

어떤 이유로 나는 날카로운 기호 (#)가 그것과 관련이 있는지 궁금해했고, '#9773'rathen 과 같은 작은 따옴표로 분기 이름을 둘러 보았지만 #9773다행히도 잘 작동했습니다.

$ git checkout -b '#9773' origin/'#9773'

많은 유닉스 쉘에서 #문자는 주석에 사용되므로 뒤에 나오는 #것은 무시됩니다. 이것은 쉘 일이며 git에만 해당되는 것은 아닙니다. 앞에 백 슬래시 따옴표를 사용하면 #충분합니다.
Paulo Scardine

1

빈 폴더를 만들려면 명령을 따르십시오. 이를 입력하고 다음 명령을 사용하십시오.

saifurs-Mini:YO-iOS saifurrahman$ git clone your_project_url
Cloning into 'iPhoneV1'...
remote: Counting objects: 34230, done.
remote: Compressing objects: 100% (24028/24028), done.
remote: Total 34230 (delta 22212), reused 15340 (delta 9324)
Receiving objects: 100% (34230/34230), 202.53 MiB | 294.00 KiB/s, done.
Resolving deltas: 100% (22212/22212), done.
Checking connectivity... done.
saifurs-Mini:YO-iOS saifurrahman$ cd iPhoneV1/
saifurs-Mini:iPhoneV1 saifurrahman$ git checkout 1_4_0_content_discovery
Branch 1_4_0_content_discovery set up to track remote branch 1_4_0_content_discovery from origin.
Switched to a new branch '1_4_0_content_discovery'
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.