2015-01-23 1 views
5

로컬 포크에 업스트림으로 추가 한 레포가 있습니다. 누군가가 홍보를 보냈고 리뷰를 원합니다. Diff 도구를 사용하여 Github의 코드를 검토 할 수는 있지만 로컬 시스템에서 코드를 테스트하고 실제 장치에서 테스트하여 (Android Repo가 제대로 작동하는지) 확인합니다.Git에서 PR 검토/테스트를위한 "pull request"체크 아웃

이 PR을 체크 아웃하는 가장 좋은 방법은 무엇입니까?

답변

8

다소 부족함이 있지만 GitHub는 풀 (pull) 요청을 업스트림 저장소에 브랜치로 제공하므로 풀 요청을 보낼 수있는 제 3 자마다 리모컨을 추가 할 필요가 없습니다.

그래서

git fetch Upstream pull/1044/head:pr1044-from-someone 

은 새로운 지점에 로컬 저장소에서 사용할 수있는 풀 요청의 커밋을 만들 것입니다, pr1044 -에서 - 사람을 검토하고 적절하게 로컬로 병합 할 수 있습니다.

자세한 내용은 help.github.com's Modifying an inactive pull request locally을 참조하십시오.

+1

가장 간단한 것. 존 감사합니다. – Hesam

1

나는 그것을 어떻게하는지 알아 냈다. 내가 모두에게 한 일은 어떻게 똑같은 질문을했는지 설명하겠습니다.

  1. Github의 PR 페이지로 이동하십시오. URL의 끝에 .patch을 추가하고 그래서 URL이 보이는 Enter 키를 누르
  2. https://github.com/YOUR-NAME/REPO-NAME/pull/1044/files 같은 URL은해야 보이는 https://github.com/YOUR-NAME/REPO-NAME/pull/1044/files.patch
  3. 이 파일을 다운로드 같은 또는 텍스트 파일을 생성 페이지를 복사하여 텍스트에 붙여 넣습니다 다운로드 할 수없는 경우 파일. 확인 확장 파일을 만드 .patch (안 .txt)
  4. 변경 명령을 따라 패치에 무엇을 살펴보십시오 해당 분기
  5. 에 새 로컬 브랜치 체크 아웃을 생성합니다. 이것은 단지 합계이며 아무것도 적용되지 않습니다 git apply --check fix_empty_poster.patch
  6. 마지막으로 당신은 다음과 같은 명령을 패치 할 수 있습니다 : 당신은 당신이 더 행복 불평이없는 경우 : 얼마나 가까운 문제로 볼 수 명령을 따름으로써 git apply --stat fix_empty_poster.patch
  7. 를 : git am --signoff < fix_empty_poster.patch

이제 리뷰 용 지부 사본이 있습니다.

더 많은 참조 :

  1. GitHub Tip: download commits as patches
  2. How to create and apply a patch with Git
2

또 다른 옵션은 로컬 사본에 원격으로 PR의 저장소를 추가

  • 입니다

    git remote add remote_name github.com/user/proj 
    
  • git checkout remote_name/branch_name_to_fetch 
    

을 사용하여 변경 사항이 원격

git fetch remote_name branch_name_to_fetch 
  • 체크 아웃에서 변화를 가져 그리고 지금 당신은 당신의 지역에 귀하의 요구에 따라 그것을 테스트 할 수 있습니다, 당신은 만들 수 있습니다 새로운 지점, 지점 간 차이점 가져 오기 등등.

    PS : IMO, 이것은 현재 접근 방식에 비해 약간 지루합니다. 많은 요청을 받으면 모든 리모컨을 추가하는 것이 혼란 스러울 수 있으며 모든 분기 기록을 가져 오는 것이 최적이 아닌 경우 패치가 완벽합니다.

  • 관련 문제