GIT覆盖代码行的作者(GIT指责)



我试图在互联网上到处找到答案,但没有成功。

我的问题是,出于某种原因,在一台新笔记本电脑上,我用"电子邮件"代替了"姓名",用"密码"代替了"电子邮件"。现在,在历史上,每个人都可以看到我的电子邮件及其密码(facepalm(。

所以我的问题是:历史上有没有办法重命名作者的名字和电子邮件?

p.s:commit仍在本地分支中

屏幕截图

您确实无法修复错误提交,但您可以停止使用它,然后小心不要将其发送到任何其他Git存储库,这样其他人就看不到它。

要对现有提交进行新的改进变体,必须将原始的(坏的(提交复制到新的改进的提交。在更改作者信息的同时复制分支上的最后提交很容易:

git commit --amend --reset-author

将使用您当前的user.nameuser.email设置。现有的最终提交将是";踢开了分支的末端";,如图所示:

...--G--H   <-- somebranch (HEAD)

这里CCD_ 3是";坏的";commit是最近的;这是";在CCD_ 4"之前;。这变成:

H
/
...--G--I   <-- somebranch (HEAD)

请注意,提交H仍然存在于Git存储库中,但除非能够找到其哈希ID,否则您将无法查看提交H

如果";坏的";提交在链的后面:

...--E--F--G--H   <-- somebranch (HEAD)

如果提交F不好,那么您就有一个更困难的任务:您必须将提交F踢出链,但这也会将提交GH踢出链。这意味着您必须将F复制到一个新的改进的I,然后再复制GH。这很难做到,因为git rebasegit cherry-pick希望保留原始作者信息,但这仍然是可能的,尤其是对于git rebase -igit commit --amend

简单提交修正修复了问题。抱歉这篇没用的帖子。

git commit --amend --author="Fedor <fedor@bodr.com>"

相关内容

  • 没有找到相关文章

最新更新