On Fri, 12 Aug 2016 17:50:12 +0200 Pablo Rodríguez <oi...@web.de> wrote:
> I have a repo (also hosted at Gitlab) that uses an email address that > I would like to remove from the whole repo (and replace with another > one). > > All contributions to that repo are mine. Is there any way that I can > replace all email addresses in both my local repo and the remote? Sort of. The e-mail address is a part of the so-called "author" and "committer" fields in the commit objects representing all the affected commits in your repository. So, to do what you need you need to actually re-write all these commits objects. Here's how to do this [1]. A note of warning. Since commits link to each other using the SHA-1 hashes calculated over their contents, and it includes the commit object itself, these hashes will be different for the re-created commits. To say this in other words, while semantically the history of your repository will remain the same -- in the sense that each re-written commit will represent exactly the set of changes the commit it replaced was, _literally_ all the history will be different because all the commits will have hashes different from the original. This means that whoever forked your repository or merely cloned it and based some their own work on that history, will need to re-fork, re-clone and take actions to accomodate this change. This situation is well described in the section "RECOVERING FROM UPSTREAM REBASE" of the `git rebase` manual page. Please be sure to read and understand it before you actually decide to do what you want. I'd say that unless it's your private repo and you therefore have full control over all of its clones, it would be much better to just update the repo's README file with the information on the change of your e-mail address. And then just do all the new commits there using the updated e-mail address. 1. https://help.github.com/articles/changing-author-info/ -- You received this message because you are subscribed to the Google Groups "Git for human beings" group. To unsubscribe from this group and stop receiving emails from it, send an email to git-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.