2010-12-17 5 views
5

소유하고 있지 않지만 관리자 권한이있는 저장소에서 끌어 오기 요청을 관리하려고합니다. 다른 포크에서 변경 사항을 가져 오려고하면 오류가 발생하지 않고 실패합니다. 여기 내 워크 플로우 ...github의 공유 저장소에서 끌어 오기 요청을 관리하기위한 워크 플로

  1. 포크의 주요 REPO는
  2. 가 포크
    3.5 (고토 2 단계)에 커밋 포크의 변화를 확인하다
  3. 주요 REPO에 끌어 오기 요청 제출 주요 REPO의 관리자로

, 나는 ... 다음과 같이 변경 사항을 병합하려고 해요

비밀번호를 입력 한 후
  1. git clone [email protected]:dude/project.git
  2. git checkout -b gtracy-master master
  3. git pull http://[email protected]/gtracy/project.git master

, 나는 오류 메시지가 ...

error: The requested URL returned error: 401 while accessing 
http://[email protected]/gtracy/project.git/ifno/refs 

이 워크 플로는 잘못인가? 내 자신의 끌어 오기 요청을 관리하는 쉬운 방법이 있습니까?

감사합니다.

답변

7

GitHub "pull request" help page은 언급하지 않지만 원래의 저장소에서 분기 상단에있는 포크에서 수행 한 작업을 rebake하는 것이 바람직합니다. 풀 요청을 제출하기 전에.
즉, 원래 repo를 원격으로 추가하고, 내 끌어 오기 요청이 결국 적용될 분기를 가져오고, 먼저 내 작업을 해당 분기 맨 위에 로컬로 내 포크 내에서 리베이스합니다.
그런 식으로 모든 pull 요청이 fast-forwards 일 것입니다.

로컬 repo에서 분기하여 작업 한 이후 원래 repo에 변경 사항이 게시되지 않았다는 것을 알고있는 경우에는 적용되지 않을 수 있습니다.

두 번째 부분에서는 "Merging pull request"부분을 따라 가서 원래 Repo 복제본의 리모컨으로 분기 된 Repo를 추가합니다.

말했다되고 있다는 오류 401 "무단"는 GitHub Smart HTTP page에서 언급 :

가 HTTPS 부분을 잊지 마세요 - 힘내 그렇게 확신, 암호가 해시하지만 와이어를 통해 암호화되지 않은 보내드립니다 SSL을 사용합니다.
Git의 다음 버전 (우리의 패치가 통합되었다고 가정)에서 Git은 사용자 이름을 알려주지 않고 클라이언트가 401을 얻으면 실제로 사용자 이름을 URL에 넣지 않아도됩니다. 힘내가 필요할 때마다 물어보십시오.

주소에서 사용자 이름을 사용하려면 https를 사용해보십시오.
http://github.com/gtracy/project.git (공용 repo 주소)

+0

내 git 설치에 문제가있는 것처럼 보입니다. 나는 https가 작동하도록 할 수 없었습니다 - "인증서를 설정하는 중에 오류를 설정하는 중 오류가 있습니다"- 그리고 'git config'를 실험하여 'http.sslcainfo'를 설정하십시오. – Greg

+0

다음 설정을 시도했습니다 ... 'git config --system http.sslcainfo \ bin/curl-ca-bundle.crt'그리고 이제는 'git pull https : //[email protected]/gtracy/project. git master '는 같은 401 오류를 다시 발생시킵니다. – Greg

+0

@Greg : 이상 (해당 repo와 관련된 계정/비밀번호에 문제가 있습니까?) 그리고 http가있는 공개 주소가 있습니까? – VonC

관련 문제