나는 master
와 development
브랜치가 있으며 둘 다 GitHub에 푸시되었습니다. 나는했습니다 clone
D, pull
에드 및 fetch
에드,하지만 난 이외 얻을 수 없습니다 남아 master
브랜치 다시.
나는 분명한 것을 놓치고 있다고 확신하지만 설명서를 읽었지만 전혀 기쁨을 얻지 못했습니다.
질문자 :Peter Coulton
나는 master
와 development
브랜치가 있으며 둘 다 GitHub에 푸시되었습니다. 나는했습니다 clone
D, pull
에드 및 fetch
에드,하지만 난 이외 얻을 수 없습니다 남아 master
브랜치 다시.
나는 분명한 것을 놓치고 있다고 확신하지만 설명서를 읽었지만 전혀 기쁨을 얻지 못했습니다.
답변자 : emk
먼저 원격 Git 리포지토리를 복제하고 여기에 cd를 넣습니다.
$ git clone git://example.com/myproject $ cd myproject
다음으로 리포지토리의 로컬 브랜치를 살펴봅니다.
$ git branch * master
그러나 저장소에 다른 분기가 숨어 있습니다! -a
플래그를 사용하여 이를 확인할 수 있습니다.
$ git branch -a * master remotes/origin/HEAD remotes/origin/master remotes/origin/v1.0-stable remotes/origin/experimental
업스트림 브랜치를 간단히 살펴보고 싶다면 직접 확인할 수 있습니다.
$ git checkout origin/experimental
그러나 해당 분기에서 작업하려면 다음과 같이 자동으로 수행되는 로컬 추적 분기를 생성해야 합니다.
$ git checkout experimental
그리고 당신은 볼 것입니다
Branch experimental set up to track remote branch experimental from origin. Switched to a new branch 'experimental'
여기서 "새 분기"는 단순히 분기가 인덱스에서 가져와서 로컬에서 생성됨을 의미합니다. 이전 행에서 알 수 있듯이, 일반적으로 origin/branch_name 분기를 의미하는 원격 분기를 추적하도록 분기가 설정되고 있습니다.
이제 로컬 지점을 보면 다음과 같이 표시됩니다.
$ git branch * experimental master
git remote
사용하여 둘 이상의 원격 저장소를 추적할 수 있습니다.
$ git remote add win32 git://example.com/users/joe/myproject-win32-port $ git branch -a * master remotes/origin/HEAD remotes/origin/master remotes/origin/v1.0-stable remotes/origin/experimental remotes/win32/master remotes/win32/new-widgets
이 시점에서 상황이 매우 이상해지고 있으므로 gitk
를 실행하여 무슨 일이 일어나고 있는지 확인하십시오.
$ gitk --all &
답변자 : Gabe Kopley
한 번에 가져오려는 원격 분기가 많은 경우 다음을 수행합니다.
$ git pull --all
이제 원격 리포지토리를 사용하지 않고도 필요에 따라 모든 분기를 체크아웃할 수 있습니다.
참고: 이렇게 하면 체크 아웃되지 않은 분기의 작업 복사본이 생성되지 않습니다. 이는 질문에서 요구한 것입니다. 이에 대해서는 다음을 참조하십시오.
답변자 : bigfish
이 Bash 스크립트가 도움이 되었습니다.
#!/bin/bash for branch in $(git branch --all | grep '^\s*remotes' | egrep --invert-match '(:?HEAD|master)$'); do git branch --track "${branch##*/}" "$branch" done
마스터를 제외한 모든 원격 분기에 대한 추적 분기를 생성합니다(원래 복제 명령에서 얻었을 수 있음). 나는 당신이 여전히 할 필요가 있다고 생각합니다
git fetch --all git pull --all
확인하기.
하나의 라이너 :
git branch -a | grep -v HEAD | perl -ne 'chomp($_); s|^\*?\s*||; if (m|(.+)/(.+)| && not $d{$2}) {print qq(git branch --track $2 $1/$2\n)} else {$d{$_}=1}' | csh -xfs
평소와 같이: 우리가 알고 있는 rm -rf 우주를 복사하기 전에 설정을 테스트하십시오.한 줄짜리 크레딧은 사용자 cfi로 이동합니다.
답변자 : Dave
--mirror
옵션을 사용하면 remote
추적 분기를 제대로 복사하는 것 같습니다. 그러나 저장소를 베어 저장소로 설정하므로 나중에 일반 저장소로 다시 전환해야 합니다.
git clone --mirror path/to/original path/to/dest/.git cd path/to/dest git config --bool core.bare false git checkout anybranch
답변자 : Nikos C.
멋진 "git checkout -b somebranch origin/somebranch" 구문을 사용하지 않고도 쉽게 분기로 전환할 수 있습니다. 넌 할 수있어:
git checkout somebranch
Git은 자동으로 올바른 작업을 수행합니다.
$ git checkout somebranch Branch somebranch set up to track remote branch somebranch from origin. Switched to a new branch 'somebranch'
Git은 동일한 이름의 분기가 정확히 하나의 원격지에 존재하는지 확인하고 존재하는 경우 원격 분기임을 명시적으로 지정한 것과 동일한 방식으로 추적합니다. Git 1.8.2.1의 git-checkout 매뉴얼 페이지에서:
<branch>를 찾을 수 없지만 일치하는 이름을 가진 정확히 하나의 리모트에 추적 분기가 있는 경우(<remote>라고 부름)
$ git checkout -b <branch> --track <remote>/<branch>
답변자 : murphytalk
에 관하여,
$ git checkout -b 실험적 출처/실험적
사용
$ git checkout -t origin/experimental
또는 더 장황하지만 기억하기 쉬운
$ git checkout --track origin/experimental
원격 저장소 추적 측면에서 더 나을 수 있습니다.
답변자 : Luuk Paulussen
수행 중인 가져오기는 모든 원격 분기를 가져와야 하지만 로컬 분기를 생성하지는 않습니다. gitk를 사용하는 경우 "remotes/origin/dev" 또는 이와 유사한 것으로 설명된 원격 분기가 표시되어야 합니다.
원격 분기를 기반으로 로컬 분기를 만들려면 다음과 같이 하십시오.
git checkout -b dev 참조/원격/원점/개발자
다음과 같은 결과를 반환해야 합니다.
브랜치 개발자는 원격 브랜치 refs/remotes/origin/dev를 추적하도록 설정되었습니다. 새 브랜치 "dev"로 전환
이제 dev 브랜치에 있을 때 "git pull"은 로컬 dev를 원격 dev 브랜치와 동일한 지점으로 업데이트합니다. 모든 가지를 가져오지만 현재 있는 가지만 트리 맨 위로 끌어옵니다.
답변자 : nobody
별칭을 사용합니다. 기본 Git 단일 라이너는 없지만 다음과 같이 정의할 수 있습니다.
git config --global alias.clone-branches '! git branch -a | sed -n "/\/HEAD /d; /\/master$/d; /remotes/p;" | xargs -L1 git checkout -t'
다음으로 사용하십시오.
git clone-branches
답변자 : elmarco
"git clone git://location"을 수행하면 모든 분기와 태그를 가져옵니다.
특정 원격 브랜치 위에서 작업하려면 원점 원격이라고 가정합니다.
git checkout -b branch origin/branchname
답변자 : Jacob Fike
늦는 것보다는 늦지만 가장 좋은 방법은 다음과 같습니다.
mkdir repo cd repo git clone --bare path/to/repo.git .git git config --unset core.bare git reset --hard
이 시점에서 모든 분기가 있는 원격 저장소의 전체 복사본이 있습니다( git branch
확인). 당신은 사용할 수 있습니다 --mirror
대신 --bare
원격의 repo 자체의 리모컨이있는 경우.
답변자 : Cerran
git clone
모든 원격 분기를 다운로드하지만 파일이 새 저장소에 있더라도 여전히 "원격"으로 간주합니다. 이것에 대한 한 가지 예외가 있습니다. 복제 프로세스가 "마스터"라는 원격 분기에서 "마스터"라는 로컬 분기를 생성한다는 것입니다. 기본적으로 git branch
는 로컬 분기만 표시하므로 "마스터"만 표시됩니다.
git branch -a
원격 분기를 포함한 모든 분기를 표시합니다.
실제로 지점에서 작업하려면 "로컬" 버전이 필요할 것입니다. 원격 브랜치에서 로컬 브랜치를 간단히 생성하려면 (체크아웃하여 작업 디렉토리의 내용을 변경하지 않고) 다음과 같이 할 수 있습니다.
git branch branchone origin/branchone git branch branchtwo origin/branchtwo git branch branchthree origin/branchthree
이 예에서 branchone
origin/branchone
기반으로 생성하는 로컬 브랜치의 이름입니다. 대신 다른 이름으로 로컬 분기를 만들고 싶다면 다음과 같이 할 수 있습니다.
git branch localbranchname origin/branchone
로컬 브랜치를 생성하면 git branch
로 볼 수 있습니다(로컬 브랜치를 보기 위해 -a
가 필요하지 않음을 기억하십시오).
답변자 : Sam
이것은 너무 복잡하지 않으며 매우 간단하고 직접적인 단계는 다음과 같습니다.
git fetch origin
이것은 모든 원격 브랜치를 로컬로 가져옵니다.
git branch -a
이것은 모든 원격 브랜치를 보여줄 것입니다.
git checkout --track origin/<branch you want to checkout>
다음 명령으로 원하는 분기에 있는지 확인하십시오.
git branch
출력은 다음과 같습니다.
*your current branch some branch2 some branch3
현재 분기를 나타내는 * 기호에 유의하십시오.
답변자 : rapher
다음과 같이 하십시오.
$ git clone git://example.com/myproject $ cd myproject $ git checkout branchxyz Branch branchxyz set up to track remote branch branchxyz from origin. Switched to a new branch 'branchxyz' $ git pull Already up-to-date. $ git branch * branchxyz master $ git branch -a * branchxyz master remotes/origin/HEAD -> origin/master remotes/origin/branchxyz remotes/origin/branch123
'git clone git://example.com/myprojectt'는 모든 것, 심지어 브랜치를 가져옵니다. 체크아웃만 하면 로컬 브랜치가 생성됩니다.
답변자 : Haimei
모든 분기를 가져오려면 "git clone"만 사용하면 됩니다.
git clone <your_http_url>
마스터 브랜치만 보이더라도 "git branch -a"를 사용하면 모든 브랜치를 볼 수 있습니다.
git branch -a
그리고 이미 가지고 있는 브랜치로 전환할 수 있습니다.
git checkout <your_branch_name>
"git clone" 후 원격 저장소에 연결할 필요가 없으므로 Wi-Fi를 닫을 때 "git branch -a" 및 "git checkout"이 성공적으로 실행될 수 있으므로 걱정하지 마십시오. 따라서 "git clone"을 수행하면 이미 원격 repo에서 모든 분기를 복사했음이 입증되었습니다. 그 후에는 원격 저장소가 필요하지 않으며 로컬에는 이미 모든 지점의 코드가 있습니다.
답변자 : MattoxBeckman
git clone
은 전체 저장소를 복사해야 합니다. 복제를 시도한 다음 git branch -a
를 실행하십시오. 모든 지점을 나열해야 합니다. 그런 다음 "master" 대신 "foo" 분기로 전환하려면 git checkout foo
.
답변자 : FedericoCapaldo
여기에서 본 모든 답변은 유효하지만 저장소를 복제하고 모든 분기를 한 번에 가져오는 훨씬 더 깔끔한 방법이 있습니다.
저장소를 복제하면 분기의 모든 정보가 실제로 다운로드되지만 분기는 숨겨집니다. 명령으로
$ git branch -a
저장소의 모든 분기를 표시할 수 있으며 다음 명령을 사용하여
$ git checkout -b branchname origin/branchname
그런 다음 한 번에 하나씩 수동으로 "다운로드"할 수 있습니다.
그러나 많은 분기가 있는 리포지토리를 복제하려는 경우 위에 설명된 모든 방법은 내가 보여줄 훨씬 깨끗하고 빠른 방법과 관련하여 길고 지루하지만 약간 복잡합니다. 이를 수행하려면 세 단계가 필요합니다.
컴퓨터에 새 빈 폴더를 만들고 저장소에서 .git 폴더의 미러 복사본을 복제합니다.
$ cd ~/Desktop && mkdir my_repo_folder && cd my_repo_folder $ git clone --mirror https://github.com/planetoftheweb/responsivebootstrap.git .git
my_repo_folder 폴더 내의 로컬 저장소는 여전히 비어 있으며, 이제 터미널에서 "ls -alt" 명령으로 볼 수 있는 숨겨진 .git 폴더만 있습니다.
git 구성의 "bare" 부울 값을 false로 전환하여 이 리포지토리를 빈(베어) 리포지토리에서 일반 리포지토리로 전환합니다.
$ git config --bool core.bare false
현재 폴더 안에 있는 모든 것을 잡고 로컬 시스템에 모든 분기를 생성하여 이것을 일반 저장소로 만듭니다.
$ git reset --hard
이제 "git branch" 명령을 입력하기만 하면 모든 분기가 다운로드되는 것을 볼 수 있습니다.
이것은 한 번에 모든 분기가 있는 git 저장소를 복제할 수 있는 빠른 방법이지만 모든 단일 프로젝트에 대해 이 방식으로 수행하려는 것은 아닙니다.
답변자 : webmat
내 도구 git_remote_branch를 사용하십시오(시스템에 Ruby가 설치되어 있어야 함). 원격 분기 조작을 쉽게 하기 위해 특별히 제작되었습니다.
사용자를 대신하여 작업을 수행할 때마다 콘솔에서 빨간색으로 인쇄합니다. 시간이 지남에 따라 그들은 마침내 뇌에 달라 붙습니다 :-)
grb가 사용자를 대신하여 명령을 실행하는 것을 원하지 않으면 '설명' 기능을 사용하십시오. 명령이 실행되는 대신 콘솔에 인쇄됩니다.
마지막으로, 모든 명령에는 쉽게 암기할 수 있도록 별칭이 있습니다.
이것은 알파 소프트웨어입니다 ;-)
다음은 grb help를 실행할 때의 도움말입니다.
git_remote_branch 버전 0.2.6 용법: grb create branch_name [origin_server] grb 게시 분기 이름 [원본 서버] grb 이름 변경 branch_name [origin_server] grb 삭제 분기 이름 [원본 서버] grb track branch_name [origin_server] 노트: - origin_server가 지정되지 않은 경우 'origin'이라는 이름을 가정합니다. (git의 기본값) - 이름 바꾸기 기능은 현재 분기의 이름을 바꿉니다. Explain 메타 명령: 명령을 앞에 추가할 수도 있습니다. 키워드 '설명'. 명령을 실행하는 대신 git_remote_branch 수행하기 위해 실행해야 하는 명령 목록을 단순히 출력합니다. 그 목표. 예시: grb 설명 만들기 grb는 my_branch github 생성을 설명합니다. 모든 명령에는 별칭도 있습니다. create: 새로 만들다, 새로 만들다 삭제: 삭제, 파괴, 죽이기, 제거, rm publish: publish, remotize 이름 바꾸기: 이름 바꾸기, rn, mv, 이동 track: 추적, 추적, 잡기, 가져오기
답변자 : Tony Barganski
모든 원격 분기 및 커밋 로그를 포함 하는 자체 포함된 클론 또는 백업 을 찾고 있다면 다음을 사용하십시오.
git clone http://user@repo.url
git pull --all
git branch -a
허용되는 답변은 원격 분기만 표시합니다. 지점을 checkout
하려고 하면 원본 서버에 대한 네트워크 액세스 권한 이 없으면 체크아웃할 수 없습니다.
크레딧: Gabe Kopley가 git pull --all
사용을 제안했습니다.
메모:
remote/origin
서버에 대한 네트워크 액세스 권한 remote/origin branches
업데이트가 반영되지 않습니다. 수정 사항은 위의 2가지 명령을 수행한 날짜와 시간의 커밋을 반영합니다.
하나의 명령으로 모든 복제 분기를 로컬 분기 로 체크아웃하려면 아래 bash 명령 중 하나를 사용하십시오.
$ for i in $(git branch -a |grep 'remotes' | awk -F/ '{print $3}' \ | grep -v 'HEAD ->');do git checkout -b $i --track origin/$i; done
또는
저장소에 중첩 분기가 있는 경우 이 명령은 이를 고려합니다.
for i in $(git branch -a |grep 'remotes' |grep -v 'HEAD ->');do \ basename ${i##\./} | xargs -I {} git checkout -b {} --track origin/{}; done
위의 명령은 remote/origin/<branchname>
과 동일한 이름의 로컬 git 저장소로 로컬 분기를 checkout
하고 네트워크 액세스 권한을 다시 얻을 remote/origin
서버의 원격 분기에서 변경 사항 --track
하도록 설정합니다. 원본 repo 서버를 다시 한 번 만들고 일반적인 방법으로 git pull
답변자 : raisercostin
로컬 리포지토리에서 복제는 git clone 및 git fetch에서 작동하지 않습니다. 많은 분기/태그를 가져오지 않은 상태로 유지합니다.
모든 분기와 태그가 있는 클론을 얻으려면.
git clone --mirror git://example.com/myproject myproject-local-bare-repo.git
모든 브랜치와 태그가 있지만 작업 복사본도 포함된 클론을 얻으려면 다음을 수행합니다.
git clone --mirror git://example.com/myproject myproject/.git cd myproject git config --unset core.bare git config receive.denyCurrentBranch updateInstead git checkout master
답변자 : Tebe
질문에 대한 답변 중 하나를 보면 줄일 수 있음을 알았습니다.
for branch in `git branch -r | grep -v 'HEAD\|master'`; do git branch --track ${branch##*/} $branch; done
그러나 원격 분기 중 하나의 이름이 예를 들어 admin_master로 지정되면 다운로드되지 않습니다.
독창적 인 아이디어에 대한 bigfish 덕분에
답변자 : Alireza
좋아, 저장소를 복제하면 거기에 모든 지점이 있습니다 ...
git branch
만 수행하면 일종의 숨겨져 있습니다 ...
따라서 모든 브랜치 이름을 보려면 다음과 같이 --all
플래그를 추가하기만 하면 됩니다.
git branch --all
또는 git branch -a
지점에 체크 아웃하면 필요한 모든 것을 얻을 수 있습니다.
하지만 복제한 후 다른 사람이 분기를 만든 경우에는 어떻게 됩니까?
이 경우 다음을 수행하십시오.
git fetch
모든 지점을 다시 확인하십시오 ...
가져오기와 결제를 동시에 하려면 다음을 수행할 수 있습니다.
git fetch && git checkout your_branch_name
또한 내가 말한 것을 단순화하기 위해 아래 이미지를 만들었습니다.
답변자 : Albert.Qing
#!/bin/bash for branch in `git branch -a | grep remotes | grep -v HEAD | grep -v master `; do git branch --track ${branch#remotes/origin/} $branch done
이 코드는 모든 원격 분기 코드를 로컬 저장소로 가져옵니다.
답변자 : ikaruss
명령줄에 복사하여 붙여넣기:
git checkout master ; remote=origin ; for brname in `git branch -r | grep $remote | grep -v master | grep -v HEAD | awk '{gsub(/^[^\/]+\//,"",$1); print $1}'`; do git branch -D $brname ; git checkout -b $brname $remote/$brname ; done ; git checkout master
가독성을 높이려면:
git checkout master ; remote=origin ; for brname in ` git branch -r | grep $remote | grep -v master | grep -v HEAD | awk '{gsub(/^[^\/]+\//,"",$1); print $1}' `; do git branch -D $brname ; git checkout -b $brname $remote/$brname ; done ; git checkout master
답변자 : Gaui
사용자가 올바른 길을 가고 있지 않다는 점을 제외하고는 이러한 답변 중 어느 것도 문제를 해결하지 못했습니다.
한 서버/시스템에서 다른 서버/시스템으로 리포지토리를 이동하는 데 문제가 있었습니다. repo를 복제할 때 마스터에 대한 로컬 분기만 생성되었으므로 새 원격으로 푸시할 때 마스터 분기만 푸시되었습니다.
그래서 저는 이 두 가지 방법이 매우 유용하다는 것을 알았습니다. 그들이 다른 사람을 돕기를 바랍니다.
방법 1:
git clone --mirror OLD_REPO_URL cd new-cloned-project mkdir .git mv * .git git config --local --bool core.bare false git reset --hard HEAD git remote add newrepo NEW_REPO_URL git push --all newrepo git push --tags newrepo
방법 2:
git config --global alias.clone-branches '! git branch -a | sed -n "/\/HEAD /d; /\/master$/d; /remotes/p;" | xargs -L1 git checkout -t' git clone OLD_REPO_URL cd new-cloned-project git clone-branches git remote add newrepo NEW_REPO_URL git push --all newrepo git push --tags newrepo
답변자 : gringo_dave
나는 Origin remote에 있는 모든 git 브랜치를 체크아웃할 수 있도록 이 작은 Powershell 함수를 작성했습니다.
Function git-GetAllRemoteBranches { iex "git branch -r" <# get all remote branches #> ` | % { $_ -Match "origin\/(?'name'\S+)" } <# select only names of the branches #> ` | % { Out-Null; $matches['name'] } <# write does names #> } Function git-CheckoutAllBranches { git-GetAllRemoteBranches ` | % { iex "git checkout $_" } <# execute ' git checkout <branch>' #> }
내 자식 설정 저장소 에서 더 많은 자식 기능을 찾을 수 있습니다.
답변자 : konsolebox
다음은 awk를 사용하는 답변입니다. 이 방법은 새 리포지토리에서 사용하는 경우 충분합니다.
git branch -r | awk -F/ '{ system("git checkout " $NF) }'
기존 분기는 단순히 체크 아웃되거나 이미 있는 것으로 선언되지만 충돌을 피하기 위해 필터를 추가할 수 있습니다.
git checkout -b <branch> -t <remote>/<branch>
명령을 호출하도록 수정할 수도 있습니다.
또는 대신 원격 분기를 지정할 수 있습니다. 이것은 murphytalk 의 답변을 기반으로 합니다.
git branch -r | awk '{ system("git checkout -t " $NF) }'
충돌 시 치명적인 오류 메시지를 표시하지만 나는 그것들이 무해하다고 봅니다.
두 명령 모두 별칭을 지정할 수 있습니다.
none 의 답변 을 참조로 사용하여 다음 명령을 사용하여 별칭을 만들 수 있습니다.
git config --global alias.clone-branches '! git branch -r | awk -F/ "{ system(\"git checkout \" \$NF) }"' git config --global alias.clone-branches '! git branch -r | awk "{ system(\"git checkout -t \" \$NF) }"'
개인적으로 track-all
또는 track-all-branches
합니다.
답변자 : Bernd Jungblut
git clone --mirror
가 이를 위해 잘 작동합니다.
git clone --mirror /path/to/original.git git remote set-url origin /path/to/new-repo.git git push -u origin
답변자 : user43685
나는 정확히 똑같이 할 필요가 있었다. 여기 내 Ruby 스크립트가 있습니다.
#!/usr/bin/env ruby local = [] remote = {} # Prepare %x[git reset --hard HEAD] %x[git checkout master] # Makes sure that * is on master. %x[git branch -a].each_line do |line| line.strip! if /origin\//.match(line) remote[line.gsub(/origin\//, '')] = line else local << line end end # Update remote.each_pair do |loc, rem| next if local.include?(loc) %x[git checkout --track -b #{loc} #{rem}] end %x[git fetch]
답변자 : jofel
다음은 모든 원격 분기에 대한 로컬 분기를 생성하는 또 다른 짧은 한 줄짜리 명령입니다.
(git branch -r | sed -n '/->/!s#^ origin/##p' && echo master) | xargs -L1 git checkout
추적 로컬 분기가 이미 생성된 경우에도 제대로 작동합니다. git clone
이후 또는 나중에 언제든지 호출할 수 있습니다.
master
브랜치를 체크아웃할 필요가 없다면 다음을 사용하십시오.
git branch -r | sed -n '/->/!s#^ origin/##p'| xargs -L1 git checkout
답변자 : kenorb
Git은 일반적으로 (지정되지 않은 경우) 하나 이상의 다른 저장소에서 모든 분기 및/또는 태그(refs, 참조: git ls-refs
)를 기록을 완료하는 데 필요한 객체와 함께 가져옵니다. 즉, 이미 다운로드된 개체가 도달할 수 있는 개체를 가져옵니다. 참조: git fetch
실제로 무엇을 합니까?
때로는 현재 것과 직접 연결되지 않은 분기/태그가 있을 수 있으므로 git pull --all
/ git fetch --all
이 경우에는 도움이 되지 않지만 다음과 같이 나열할 수 있습니다.
git ls-remote -h -t origin
참조 이름을 알고 수동으로 가져옵니다.
따라서 모두 가져 오려면 다음을 시도하십시오.
git fetch origin --depth=10000 $(git ls-remote -h -t origin)
--depth=10000
매개변수는 저장소를 축소한 경우 도움이 될 수 있습니다.
그런 다음 모든 지점을 다시 확인하십시오.
git branch -avv
위의 방법이 도움이 되지 않으면 추적 목록에 누락된 분기를 수동으로 추가해야 합니다(어떻게든 손실되었기 때문에).
$ git remote -v show origin ... Remote branches: master tracked
다음과 같은 git remote set-branches
git remote set-branches --add origin missing_branch
따라서 가져오기 후 remotes/origin
아래에 나타날 수 있습니다.
$ git remote -v show origin ... Remote branches: missing_branch new (next fetch will store in remotes/origin) $ git fetch From github.com:Foo/Bar * [new branch] missing_branch -> origin/missing_branch
여전히 마스터 브랜치 이외의 다른 항목을 얻을 수 없으면 다음을 확인하십시오.
git remote -v
). 예:git config branch.master.remote
가 origin
.git remote show origin
(이 게시물 참조)을 origin
이 올바른 URL을 가리키는지 확인합니다.출처 : Here
출처 : http:www.stackoverflow.com/questions/67699/how-to-clone-all-remote-branches-in-git">
Git 리포지토리에 빈 디렉터리를 추가하려면 어떻게 해야 합니까? (0) | 2021.09.28 |
---|---|
목록 목록에서 평면 목록을 만드는 방법 (0) | 2021.09.28 |
'for' 루프에서 인덱스에 액세스합니까? (0) | 2021.09.26 |
슬라이스 표기법 이해 (0) | 2021.09.26 |
배열에 JavaScript의 값이 포함되어 있는지 어떻게 확인합니까? (0) | 2021.09.26 |