2014-10-17 2 views
0

Git에서 겉으로보기에는 간단한 워크 플로우를 설정하는 데 문제가 있습니다.간단한 Git 워크 플로우

두 개발자 인 DevA와 DevB가 있습니다. 두 개발자가 액세스 할 수있는 '원본'이라는 원격 저장소가 있습니다.

데바가 '마스터'에서 지점을 생성

...

데바가 변경 newbranch 할 수 및

git add . 
git commit -m 'newbranch changes' 

데바 원산지

git push --all 

DevB에 대한 변경 사항을 밀어 커밋

git checkout -b 'newbranch' 

가지를 원한다.

git fetch --all 

DevB은 ...

git checkout newbranch 
git pull newbranch 

DevB이 변경 newbranch 할 수 및

git add . 
git commit -m 'message' 
git push --all 

데바 원격 변경 사항을 얻을 필요가 있고 얻는다 기원에 대한 변경 사항을 밀어 newbranch 작업하고 싶어

git checkout newbranch 
git pull --all 

You asked to pull from the remote '--all', but did not specify 
a branch. Because this is not the default configured remote 
for your current branch, you must specify a branch on the command line. 

...

다음3210
git branch -r 

origin/newbranch 
origin/HEAD -> origin/master 
origin/master 

...

git pull origin/newbranch 

fatal: 'origin/newbranch' does not appear to be a git repository 
fatal: Could not read from remote repository. 

누군가가 여기에 잘못된 무엇인지 말씀해 주시겠습니까?

+1

git pull --all origin 올바른 워크 플로우 것 같다보십시오. 어떤 오류가 있습니까? –

+0

몇 가지 오류를 포함하도록 질문을 명확히했습니다. –

+2

'git pull --all'을 사용하지 말고'git pull' 만 사용하고 추적 브랜치에서만 작동한다는 점에 유의하십시오. 'git branch -vv'로 추적 정보를 볼 수 있습니다. –

답변

2

git push --all origin 또는

1

내가 잘못 생각할 수도 있지만 git pull --all을 사용하면 --all은 원격 저장소의 이름으로 생각됩니다.

나는 DevA가 단지해야한다고 생각한다 : git pull origin newbranch.

또 다른 옵션은 git fetch origin을 사용하고 DevAgit merge origin/newbranch을 사용하여 수동으로 병합을 수행 할 수 있습니다.

관련 문제