我在 Github 上推送了一个新分叉的git仓库,但在提交后我注意到我的用户名不正确。我推送的用户名是“Brock Woolf”但它应该是brockwoolf
,这是我在github上的用户名。
我已经在本地更改了默认值:
git config --global user.name "brockwoolf"
但是如何在已推送的更改中更改用户名?
答案 0 :(得分:27)
如果人们已经推动了已经推动的变革,那么你将不得不忍受这种变化。如果没有人拉动它(即你在推动后意识到你的错误),你可以修改你的提交:
git commit --amend
确保您不对提交添加任何新更改 - 请勿使用-a
,请勿先使用git add
。然后你可以强制推动,因为这是一个非快进的变化:
git push -f
如果有人已经用不正确的名称提取了提交......这可能实际上不会弄乱它们,因为将它与包含原始提交的内容合并应该很容易;补丁是一样的。但是,如果那个人曾经推回到你的仓库,那么他们就会推动这个合并 - 以及它的一方的原始提交。如果您最终在回购中使用两个名称,那么就会失去重命名的目的。 (这正是我在OP的答案评论中描述的问题。)
答案 1 :(得分:7)
如上所述here,您可以
git commit --amend --author="Author Name <email@address.com>"
git push -f
答案 2 :(得分:3)
git commit -a --amend
git pull
git push
如果您有更好的方法,请随意回答。