什么是“临时克隆令牌”(在 GitHub 中)

Mik*_*all 5 git github

我正在使用GitHub Classroom通过 GitHub 管理学生作业。基本工作流程是,我创建一个作业(包括入门存储库),学生在 GitHub 上分叉存储库,将其克隆到他们的计算机,然后将更改提交/推送回 GitHub。

我想修改他们的存储库并推送我的更改(从技术上讲,我只想添加一个带有反馈的文件,而不是更改他们的代码,但这既不在这里也不在那里)。

当我尝试将更改推送回 GitHub 时,出现以下错误:

remote: Temporary clone tokens are read-only.
fatal: unable to access 'https://github.com/2019-BIT-142/bit-142-lesson-10-StudentsName.git/': The requested URL returned error: 403
Run Code Online (Sandbox Code Playgroud)

什么是“临时克隆令牌”?为什么我会收到 403(禁止)响应?

我什至清除了我的 GitHub 凭据(我正在使用 Windows 凭据管理器),它甚至没有询问我的用户名/密码,因此我假设这是“克隆令牌”本身的问题,而不是我的帐户的问题。

Von*_*onC 5

该功能来自该项目education/classroom

education/classroom问题 2182包括:

不幸的是,这是 Classroom Assistant 的一个已知限制,因为我们使用临时令牌从 GitHub 克隆存储库(我们决定这样做,以便 Classroom Assistant 不必是自己的 OAuth 应用程序)。

现在的解决方法是再次克隆分配(因为令牌将被刷新)或手动替换存储库中的 URL 以删除临时令牌。
一般来说,这个过程和功能请求在education/classroom-assistant#103中有概述。

该公关声明:

使用“课堂助手”下载的存储库的令牌过期得相当快,这意味着我可以下载作业的所有存储库,但如果学生进行任何更改(例如,如果我告诉他们进行更改),我必须再次下载他们的存储库,因为令牌已过期。我无法拉动他们的更改。

有专门用于留下反馈的脚本:NNHSComputerScience/gitHubScripts

也就是说,我不确定这是否仍然是我向学生提供反馈的首选方法。我们目前正在探索使用 GitHub Issues 来代替。

我同意提交回购协议并不是提供反馈的最理想方式。我长期以来一直有这样的想法:反馈应该以 GitHub 上的代码审查的形式出现。