2010-03-12 11 views
11

github을 사용하고 있지 않습니다. 우리 머신에 git setup이있다.git pull does not

실험실이라는 마스터에서 지점을 만들었습니다. 그러나 내가 git pull을하려고 할 때 나는 메시지를 받고있다. I 원점/실험 실험에 매핑되는 위의 메시지를 읽고 여기

> git pull 
You asked me to pull without telling me which branch you 
want to merge with, and 'branch.experiment.merge' in 
your configuration file does not tell me either. Please 
specify which branch you want to merge on the command line and 
try again (e.g. 'git pull <repository> <refspec>'). 
See git-pull(1) for details. 

는 자식 원격보기 원점

> git remote show origin 
* remote origin 
    Fetch URL: ssh://git.domain.com/var/git/app.git 
    Push URL: ssh://git.domain.com/var/git/app.git 
    HEAD branch: master 
    Remote branches: 

    experiment  tracked 
    master   tracked 
    Local branches configured for 'git pull': 
    master  merges with remote master 
    Local refs configured for 'git push': 
    experiment pushes to experiment (local out of date) 
    master  pushes to master  (up to date) 

의 결과이다. 그리고 내 지역 저장소는 오래된 것임을 알고 있습니다. 그렇다면 내가 왜 자식을 끌어낼 수 없습니까?

git pull origin experiment 

푸시 : 정보 변경 "마스터"에 대한

git push origin experiment 

답변

17

당겨 나는이 지점을 생성하는 방법이다 실험 "예 :

+0

감사. git pull과 git push만으로 작업을 수행 할 수 있도록 필요한 것은 무엇입니까? –

+1

GIT 별칭을 만들 수 있습니다. 예를 들어, 해당 실험 브랜치만을 사용하려는 경우 동일한 git pull origin 실험을 수행 할 수있는 pull 또는 smth 명령을 작성할 수 있습니다. 별칭에 대한 정보는 http://git.wiki.kernel.org/index.php/Aliases –

+0

을 참조하십시오.하지만 'git pull'은 일부 브랜치에서는 작동하지만 다른 브랜치에서는 작동하지 않는 이유는 무엇입니까? 일반적으로'git pull'은 현재 체크 아웃 된 브랜치를 원점에서 꺼내지 만 어떤 경우에는 그렇지 않습니다. OP에서 설명한 오류 메시지가 나타납니다. 이 불일치가 왜 발생하는지 나는 이해하지 못한다. – geoidesic

0

이클립스 github 플러그인에서이 문제를 직면하고있었습니다.

이것은 저장소에 충돌 파일이 있기 때문에 발생할 수 있습니다. 그리고 파일을 체크인하려고했습니다. 그런 다음에는 마스터 저장소가 아닌 로컬 저장소에서 체크인합니다. 그래서 master (head) 저장소의 anythings를 가져 오거나 체크인 할 수 없습니다.

나는 하나의 솔루션이 유용 할 수도 있지만, 그것은 나를 위해 최대 시간 동안 작동합니다. 바로 가기 : 1) 충돌 파일을 마우스 오른쪽 버튼으로 클릭 2) - 머리 수정 으로 교체하십시오. 3) 잠시 기다리십시오. (인내심을 갖고 있으면 시간이 걸릴 것입니다.) 4) 이전 단계를 모두 반복하십시오. 모든 충돌 파일