2017-01-16 1 views
1

은닉과 함께 GIT (버전 1.8.5.6)에 문제가 있습니다.Git Branch가 Stash의 원격 지점이 아닙니다

git push -u origin <my new branch> 

지금 나는 내 새로운 지점을 체크 아웃 할 수 없습니다입니다 : 내가 명령 결국

git checkout -b <my new branch> 

내 개발 시스템의 로컬 지점을 만든 나는 원격 숨김 서버에 내 새로운 지점을 밀어 왜냐하면 Stash의 브랜치는 원격 브랜치가 아니기 때문입니다. 나는 다음과 같은 명령을 실행하면 나는 모든 지점이 표시되지 않습니다 결과에서

git branch -a 

또는

git branch -r 

는 숨겨 놓은 내 지점 원격 지점으로 만들어지지 않습니다. 이제 두 가지 질문이 있습니다. 내 지점이 먼 지점이 아니라는 것은 어떻게 이루어 집니까?

분기를 변경하여 원격으로 변환 할 수 있습니까? , 요른

+0

좋아요, 제가 혼자서 문제를 해결했다고 생각합니다. 내 로컬 저장소가 어떤 식 으로든 손상되었습니다. .git 디렉토리를 포함하여 내 로컬 저장소를 삭제했습니다. 그 후 원격 저장소를 복제했습니다. 다음에서는 Stash 서버에서 최신 분기를 체크 아웃 할 수있었습니다. – soa

답변

0

망할 놈의 (주로) 오프라인 도구입니다

안부

git remote show 
--> origin 
git ls-remote 
--> shows all branches including that ones I have pushed from my dev system. 

이 추천 해 주셔서 감사합니다 : 여기

몇 가지 추가 정보입니다. 테스트 시스템은 리모트에 접속할 때까지 리모트에서 새로 작성된 브랜치에 대해 알지 못합니다. git ls-remote은이를 수행하므로 새 분기가 표시됩니다.

로컬 장비에 업스트림에있는 모든 태그와 브랜치에 대해 알리려면 git fetch --all을 사용할 수 있습니다.

리포지토리를 다시 복제하면 모든 원격 태그와 분기를 가져 오지 만 이미 가지고있는 모든 개체를 다시 다운로드 한 것과 같은 효과가 있습니다.

그러나 그 반대는 사실이 아닙니다. git fetch --all은 더 이상 상류에 존재하지 않는 가지를 제거하지 않습니다. 이를 위해서는 git remote prune origin이 필요합니다.

관련 문제