Why does git log show my password?
当我键入git log时,提交的结果列表在用户名后的括号中显示我的密码,如下所示:
1 2 3 4 5
| commit 5ff14f929e2244f388a41b6f711e7b9b58c57cb2
Author: herman <MyPassw0rd>
Date: Wed Aug 29 10:00:39 2018 +0200
initial commit |
为什么要这样做,我该如何修复?
- 在这条线上的某个地方,您以电子邮件的形式输入了密码。不要这样做(见下面的答案)。
那不应该是你的密码,应该是你的电子邮件。虽然我不知道您如何在电子邮件设置中输入密码,但您可以在当前项目中使用
或全局使用
号
此外,您还应该更改密码。
- 谢谢!我已经更改了此设置,现在显示了新提交的电子邮件。但是,我的旧提交仍然包含旧密码。我试图在/git文件夹中手动更改它。我可以找到登录名.git/logs/head和.git/logs/refs/heads/master,并在那里进行了更改,但当我键入git log时,它仍然显示它们。我能做什么?
- Git,重写以前的提交用户名和电子邮件。但是,如果您与任何人共享您的存储库,这将使历史混乱,您可能不想这样做(或者您应该强制推送,然后让每个人重新克隆)。更改密码。
- 谢谢!但我收到消息,我可以找到命令。(Git版本2.15.2(Apple Git-101.1))
- 读完答案:)它解释了它是Git别名,并给出了它的定义。(您甚至可以看到它是如何在.gitconfig文件中定义的)
- 谢谢!我和git filter-branch -f --env-filter"GIT_AUTHOR_NAME='Newname'; GIT_AUTHOR_EMAIL='newemail'; GIT_COMMITTER_NAME='committed-name'; GIT_COMMITTER_EMAIL='committed-email';" HEAD一起做的。
- 只要您知道这里没有条件逻辑,它将改变所有提交。我希望你没有合作者。:)