Git合并本地克隆的远程拉取请求

时间:2018-01-27 21:40:14

标签: git github

我正在尝试以拉取请求的形式对提交给git存储库的作业进行评分。每个拉取请求都是一个学生的提交。此仓库中只有一个分支包含分配提示。 (我没有写这个回购的权限。)

我如何在本地计算机上测试每个拉取请求?我尝试过以下内容:

  • 我使用github.com上的GUI克隆了主分支
  • 我尝试了this article中的说明,在gitbash终端中输入以下内容:

    $ git checkout -b [student-alias]    
    $ git fetch origin pull/1/head:[student-alias] --update-head-ok
    
  • 获取:

    $ git fetch origin pull/1/head:[student-alias] --update-head-ok
    

给了我以下错误:

  

远程:   计数对象:61,完成。
远程:压缩对象:100%   (4/4),完成。
远程:总共61(delta 21),重复使用20(delta 20),   pack-reused 37
打开包装对象:100%(61/61),已完成。
从   https://github.com/repo-name
! [拒绝]
  refs / pull / 1 / head - > [student-alias](非快进)

1 个答案:

答案 0 :(得分:2)

如果你只想测试每个分支而不是

git fetch origin [student-alias]
git checkout origin/[student-alias]

允许您将工作目录设置为每个分支[student-alias]

的当前状态

如果你想检查拉取请求的状态(通常在github上它与它的最新版本的分支没有区别,除非合并),那么我建议你按照你链接的教程(不是没有提到--update-head-ok并与

一起使用
git fetch origin pull/[pull-request-id]/head:[student-alias]
git checkout [student-alias]

这两者之间的区别在于,一个在pull请求的另一个分支上运行(这是一个github功能)。