我正在学校的计算机上编写一个简单的脚本,并将更改提交给Git(在我的pendrive中的repo中,从我家里的计算机克隆).几次提交后,我意识到我正在以root用户身份提交东西.
有没有办法将这些提交的作者改成我的名字?
我发现 GitHub 中缺少的这个功能令人沮丧,因此我在这里记录我的解决方法以帮助下一个人。欢迎使用替代的、更好的解决方法。
这个问题不是如何更改GitHub 中提交的作者?...因为这个问题不清楚,它是询问如何重写一些提交的作者并将其推送到 github,还是实际上更改最初创建整个 PR 的名称。而且,该问题的公认答案是对本地.git/config文件的简单修复,这显然无法解决我在这里讨论的 GitHub 问题。
在 GitHub PR 的顶部,您会看到如下内容:
username想要将1提交合并到base_branchfromtheir_feature_branch
那username:我们怎样才能改变这一点?
PR 示例(从 GitHub 中“随机”选择,只是为了显示下图中的 PR 作者行)。图像:
假设每个人都具有对整个存储库的完全推送访问权限,这意味着您无论如何都可以向彼此的分支推送/拉取。
2020 年,我的一位同事在一个全新的分支上创建了 PR,该分支原本打算进行 3 个月的工作,直到其中包含大量新功能。然后,它将被合并。当迷你 PR 进入这个单独的、长期运行的、独立的分支时,同行评审将会发生。
PR 最初是用“不审查”标签打开的,只是为了让分支建立起来,这样我们的 CI(持续集成)系统就会开始每天构建它,以确保它不会被破坏。然后,我们都会为这个分支做出贡献,并理解打开它的人将是“流程所有者”,并引导分支完成所有测试和流程,直到它合并回主分支。
我的同事在发布此公关后立即离开了公司。我立即成为流程负责人,并在 PR 上工作了 3 个月并最终合并了它。该存储库是由维护者设置的,以禁用除“挤压合并”之外的所有类型的合并(请参阅我在这个问题下的评论),因此当它被合并时,Github 将所有数十个单独的提交压缩为一个巨大的提交并附加我同事的名字(请记住,他过去 3 个月没有来过公司)提交到该提交,尽管这是我在其 3 个月的生命周期中几乎全部管理的提交。
git diff --shortstat 123456789abcd~..123456789abcd显示以下输出:
164 files changed, …Run Code Online (Sandbox Code Playgroud)