在 Git 中更改电子邮件地址
Posted
技术标签:
【中文标题】在 Git 中更改电子邮件地址【英文标题】:Change email address in Git 【发布时间】:2016-10-14 19:24:35 【问题描述】:我有一个项目托管在 Git stash 中(现在更名为 Bitbucket Server)。它是使用詹金斯构建的。 现在我在本地安装我的 Git 时打错了。 喜欢@ab.com 而不是@abc.com
每次构建后,jenkins 都会发送电子邮件通知,它会从 Git 提交中提取我不正确的电子邮件地址并尝试发送。
即使我在本地 Git 中更改了电子邮件地址,我仍然看到 jenkins 将电子邮件发送到旧的错误地址。
我该如何解决这个问题?
【问题讨论】:
在Post-build Actions
中尝试Editable Email Notification
。您可以通过文字字符串或电子邮件地址变量来定义收件人列表。对于早期提交中的错误邮件,您可以使用git filter-branch --env-filter
进行修改。但这会重写提交历史。不推荐。
我知道后期构建步骤。这就是我现在解决问题的方式。
【参考方案1】:
本地设置电子邮件地址(每个存储库单独设置)
打开 Git Bash。
将当前工作目录更改为您要在其中设置 Git 配置电子邮件的本地存储库。
使用以下命令设置您的电子邮件地址:
git config user.email "your_email@abc.com"
-
使用以下命令确认您已正确设置电子邮件地址。
git config user.email
全局设置电子邮件地址(仅在本地没有设置时使用)
打开 Git Bash。
使用以下命令设置您的电子邮件地址:
git config --global user.email "your_email@abc.com"
-
确认您已设置电子邮件地址:
git config --global user.email
或者使用环境变量
GIT_COMMITTER_EMAIL=your_email@abc.com
GIT_AUTHOR_EMAIL=your_email@abc.com
PD:来自 github 官方指南的信息
【讨论】:
我已经这样做了,并且在 git 中更改了电子邮件地址。但是詹金斯仍然引用了来自 Git 的旧电子邮件地址。奇怪! 您已经进行的提交将有一个旧的电子邮件地址。只有新的提交才会有新的电子邮件地址。如果您想更改现有提交中的电子邮件地址,请参阅how to change an author of a commit。 我可以添加一个全局电子邮件,尽管存在一个 repo(local) 邮件,但它支配所有 repos 吗? 可以使用git config --get user.email
查看值【参考方案2】:
根据 git 文档,你应该做的就是重新运行
$ git config --global user.name "John Doe"
$ git config --global user.email johndoe@example.com
然后检查以确保更改生效
$ git config --list
这在 Scott Chacon 和 Ben Straub
的 Pro Git 书中列出1.6 入门 - First-Time Git Setup
【讨论】:
【参考方案3】:使用
"git -c user.name="你的名字" -c user.email=youremail@email.com 提交 --amend --reset-author"
【讨论】:
【参考方案4】:设置您的全局用户名/电子邮件配置:
打开命令行。
设置您的用户名:
git config --global user.name "FIRST_NAME LAST_NAME"
设置您的电子邮件地址:
git config --global user.email "MY_NAME@example.com"
设置存储库特定的用户名/电子邮件配置:
从命令行切换到存储库目录。
设置您的用户名:
git config user.name "FIRST_NAME LAST_NAME"
设置您的电子邮件地址:
git config user.email "MY_NAME@example.com"
通过显示您的配置文件来验证您的配置:
cat .git/config
更多信息和其他版本控制系统.. => SeeThis
【讨论】:
【参考方案5】:直接在JENKINS_HOME/users/YOUR_NAME/config.xml
配置文件中编辑你的邮件并重启Jenkins服务器
【讨论】:
以上是关于在 Git 中更改电子邮件地址的主要内容,如果未能解决你的问题,请参考以下文章