【问题标题】:Using GitHub as proof of code's creation date使用 GitHub 作为代码创建日期的证明
【发布时间】:2023-01-22 11:39:28
【问题描述】:

毫无疑问,是否可以证明 GitHub 上的代码日期? 我知道实际上可以修改日期,也可以推送带有过去日期的代码,那么有没有办法绝对确定具有特定日期的代码在它这么说时实际上已经提交了?

语境:

我的团队忘记按时提交作业,但我们确实在截止日期前将所有代码推送到了存储库。我们询问是否仍然可以提交作业,使用 GitHub 作为代码实际上是在截止日期之前的证明,但教授拒绝了,说日期可以伪造。

【问题讨论】:

标签: git github


【解决方案1】:

教授是对的,Git 作者和提交日期可以伪造,但 Github 元数据中有些东西不能。

"pushed_at" timestamp on a repository 是最后一次推送的时间。如果您最后一次推送回购协议是在截止日期之前,您可以将其用作证据。你可以得到这个via the Github API

如果您使用 Pull Requests,您可以使用这些时间戳来显示该代码的提交和合并时间。

您可以使用带时间戳的 Github API to get a list of events on your repository。 PushEvents 将包含推送的提交。这应该足以表明在截止日期之后没有推送更多代码。或者,如果是,请要求允许提交在截止日期前推送的代码。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-19
    • 1970-01-01
    相关资源
    最近更新 更多