One of the side-effects of developing externally, this way, is that the internal/private git service won't really know about the email addresses associated with the externally-sourced commits. While you can add all of your external email addresses to your account within the internal/private git service, some of those external email addresses may not be verifiable (e.g., if you use GitHub's "noreply" address-hiding option).
GitLab makes having these non-verifiable addresses in your commit-history not particularly fun/easy to resolve. To "fix" the problem, you need to go into the GitLab server's administration CLI and fix things. So, to add my GitHub "noreply" email, I needed to do:
- SSH to the GitLab server
- Change privileges (sudo) to an account that has the ability to invoke the administration CLI
- Start the GitLab administration CLI
- Use a query to set a modification-handle for the target account (my contributor account)
- Add a new email address (the GitHub "noreply" address)
- Tell GitLab "you don't need to verify this" (mandatory: this must be said in a Obi-Wan Kenobi voice)
- Hit save and exit the administration CLI
For me, this basically looked like:
------------------------------------------------------------------------------------- GitLab: 11.6.5 (237bddc) GitLab Shell: 8.4.3 postgresql: 9.6.10 ------------------------------------------------------------------------------------- Loading production environment (Rails 5.0.7) irb(main):002:0> user = User.find_by(email: 'my@ldap.email.address') => #irb(main):003:0> user.email = 'ferricoxide@users.noreply.github.com' => "ferricoxide@users.noreply.github.com" irb(main):004:0> user.skip_reconfirmation! => true irb(main):005:0> user.save! => true irb(main):006:0>
Once this is done, when I look at my profile page, my GitHub "noreply" address appears as verified (and all commits associated with that address show up with my Avatar)