Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
git推送后更改git作者身份_Git - Fatal编程技术网

git推送后更改git作者身份

git推送后更改git作者身份,git,Git,在我已经将提交推送到上游存储库之后,如何更改提交的作者您必须修改本地存储库上的提交(git commit--amend--author=“New author Name”),并强制推送-git push-f更改(一旦您向上游推进,重写历史记录通常是一种不好的做法)。另一个完整的解决方案。 如果你在没有意识到提交使用了不同的电子邮件帐户的情况下完成了多个git推送,现在你需要更改它。 下面是我用来将以前使用不同电子邮件提交的所有内容转换为新电子邮件id的命令 git filter-branch -

在我已经将提交推送到上游存储库之后,如何更改提交的作者

您必须修改本地存储库上的提交(
git commit--amend--author=“New author Name”
),并强制推送-
git push-f
更改(一旦您向上游推进,重写历史记录通常是一种不好的做法)。

另一个完整的解决方案。 如果你在没有意识到提交使用了不同的电子邮件帐户的情况下完成了多个git推送,现在你需要更改它。 下面是我用来将以前使用不同电子邮件提交的所有内容转换为新电子邮件id的命令

git filter-branch -f --env-filter "GIT_AUTHOR_NAME='yourname'; GIT_AUTHOR_EMAIL='youremail@example.com'; GIT_COMMITTER_NAME='yourname'; GIT_COMMITTER_EMAIL='youremail@example.com';" HEAD;

要深入解释为什么推写重写的历史会让人害怕(如果有人可能从上游存储库中拉过),请参阅“注意”中的lol,关于请更改以使用您自己的详细信息:)GitHub支持页面上也有一个版本:除非您知道自己在做什么,否则不推荐!在我这样做之后,它不再是“提交错误名称”,而是在中显示“编写了rightname并提交了错误名称”github@Kip这可能是由于配置了错误的名称
user.name
user.email
(这可能是原始错误提交中问题的根源)
git commit--amend--author“New author Name”
上面更改了作者,但使用您配置的用户/电子邮件作为提交者。如果要覆盖配置的用户/电子邮件,则:
git-c user.name=“新作者姓名”-c user.email=email@address.com提交--修改--重置作者
有关详细信息,请参阅以下内容: