我正在尝试以拉取请求的形式对提交给git存储库的作业进行评分。每个拉取请求都是一个学生的提交。此仓库中只有一个分支包含分配提示。 (我没有写这个回购的权限。)
我如何在本地计算机上测试每个拉取请求?我尝试过以下内容:
我尝试了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](非快进)
答案 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功能)。