DEV Community

Sarah Lean 🏴󠁧󠁢
Sarah Lean 🏴󠁧󠁢

Posted on • Edited on • Originally published at techielass.com

Git error "Your push would publish a private email address"

So I hit an error trying to do my first pull request (PR) into the Octopus Deploy Documentation. I had forked the repository and was working on it locally on my own machine within VS Code.

The push to my fork kept failing and I initially thought, oh it's probably my setup, I probably haven't linked VS Code/GitHub together, but when I read the error I was a bit baffled.

It was telling me:

Error "Your push would publish a private email address
Enter fullscreen mode Exit fullscreen mode

I did remember making sure my email addresses on GitHub private when I left Microsoft.

On investigating the issue I realised there were two solutions. Make my email addresses public again or use the randomly generated email that GitHub give you for these situations.

Find your GitHub email address

Your GitHub no reply address is in your GitHub Personal Settings → Emails. It is mentioned just below the Keep my email address private checkbox.

GitHub no reply email address

Configure Git to use your GitHub email address

You want to open VS Code or a Windows Terminal or your chosen IDE for using with GitHub and configure this new email address to be used for your commits.

The following command will set the email address to be used for every repository that you have on your computer:

git config --global user.email "{ID}+{username}@users.noreply.github.com"
Enter fullscreen mode Exit fullscreen mode

However, if you only want to use the email address for a single repository then this is the command you should use:

git config user.email "{ID}+{username}@users.noreply.github.com"
Enter fullscreen mode Exit fullscreen mode

Reset the author information on that last commit
You now need to reset the author information on that commit that just failed for you.

git commit --amend --reset-author
Enter fullscreen mode Exit fullscreen mode

Push that commit

You can now push that commit and it will be successful and future commits will use the no reply email address as well.

Top comments (0)