【问题标题】:Change email address in Git在 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 进行修改。但这会重写提交历史。不推荐。
  • 我知道后期构建步骤。这就是我现在解决问题的方式。

标签: git email jenkins


【解决方案1】:

本地设置电子邮件地址(每个存储库单独设置)

  1. 打开 Git Bash。

  2. 将当前工作目录更改为您要在其中设置 Git 配置电子邮件的本地存储库。

  3. 使用以下命令设置您的电子邮件地址:

git config user.email "your_email@abc.com"
  1. 使用以下命令确认您已正确设置电子邮件地址。
git config user.email

全局设置电子邮件地址(仅在本地没有设置时使用)

  1. 打开 Git Bash。

  2. 使用以下命令设置您的电子邮件地址:

git config --global user.email "your_email@abc.com"
  1. 确认您已设置电子邮件地址:
git config --global user.email

或者使用环境变量

  1. GIT_COMMITTER_EMAIL=your_email@abc.com
  2. 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 ChaconBen Straub

Pro Git 书中列出

1.6 入门 - First-Time Git Setup

【讨论】:

    【解决方案3】:

    使用

    "git -c user.name="你的名字" -c user.email=youremail@email.com 提交 --amend --reset-author"

    【讨论】:

      【解决方案4】:

      设置您的全局用户名/电子邮件配置:

      1. 打开命令行。

      2. 设置您的用户名:

        git config --global user.name "FIRST_NAME LAST_NAME"

      3. 设置您的电子邮件地址:

        git config --global user.email "MY_NAME@example.com"

      设置存储库特定的用户名/电子邮件配置:

      1. 从命令行切换到存储库目录。

      2. 设置您的用户名:

        git config user.name "FIRST_NAME LAST_NAME"

      3. 设置您的电子邮件地址:

        git config user.email "MY_NAME@example.com"

      4. 通过显示您的配置文件来验证您的配置:

        cat .git/config

      更多信息和其他版本控制系统.. => SeeThis

      【讨论】:

        【解决方案5】:

        直接在JENKINS_HOME/users/YOUR_NAME/config.xml配置文件中编辑你的邮件并重启Jenkins服务器

        【讨论】:

          猜你喜欢
          • 2016-03-06
          • 2019-01-11
          • 1970-01-01
          • 2011-09-09
          • 1970-01-01
          • 1970-01-01
          • 2020-08-16
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多