87

I'd like to contact a developer on GitHub to see how I can help out, etc. I don't see the option anywhere.

2

12 Answers 12

45

You can contact a GitHub user by going to her/his user page (https://github.com/[USERNAME]) and on the left-hand site you should see her/his email address (if they have provided one).

2
  • 15
    And if they haven't?
    – flarn2006
    Dec 12, 2019 at 4:23
  • 2
    ..then it looks like you reached dead end
    – sobi3ch
    Jan 23, 2020 at 10:57
49

Check out the repository and look for their email address in the Git log.

1
  • 4
    It works! Thanks for the tip, that's sneaky :D
    – Gael
    Dec 18, 2020 at 2:05
24

This method worked in August 2022

  1. Copy and paste the next line into your browser (feel free to bookmark it): https://api.github.com/users/xxxxxxx/events/public.
  2. Find the GitHub username for which you want the email: Replace the xxxxxxx in the URL with the person's GitHub username. Hit Enter.
  3. Press Ctrl+F and search for “email”.
4
  • 2
    Not working. That page just shows an empty array. ([ ])
    – felwithe
    Feb 4, 2019 at 14:46
  • 2
    FYI unfortunately this only works if the user has made their email public. If they have not then the other options posted here are worth a shot.
    – chainwork
    Mar 26, 2019 at 0:09
  • This api.github.com/users/xxxxxxx is working link! Jul 6, 2020 at 18:34
  • Yeah the email is @users.noreply.github.com so dead end.
    – user643011
    Nov 27, 2020 at 11:12
22

I don't know about sending them a message directly, but if you post a comment in a discussion that they are involved in, then it will appear as a notification in their github account.

2
  • 3
    Yeah, I was hoping to avoid posting my email but ended up doing it anyway. Thanks.
    – Josh M.
    Jul 21, 2012 at 17:06
  • 32
    It would be nice if there was a direct-message mechanism, oh well!
    – Josh M.
    Jul 21, 2012 at 17:07
17

If users are active on GitHub, you might be able to catch their email address from a commit log or open up an issue on a project they are working on.

If they are inactive however and don't have a visible email or repository there doesn't seem to be a direct way. I came up with this workaround that might be worth a try in extreme cases:

  • create an empty repository
  • add a README.md to it containing your message and include a reply email
  • go to the Settings of that repository
  • send the repository via Transfer Ownership to the user in question

This should produce a notification for the user and allow him to contact you.

In cases when a user account is completely dead and you just want to get rid of it so that you can use the name for your own projects, you can also contact support, they will remove dead accounts:

https://help.github.com/articles/name-squatting-policy/

3
  • Thanks for mentioning the Name Squatting Policy. This was exactly what I was looking for! Aug 14, 2015 at 16:08
  • 1
    excellent suggestion! alternatively, one can simply invite the user to become a contributor to that repository
    – axd
    Jan 6 at 15:01
  • 1
    GitHub rejected my ticket with a message saying that they no longer review requests to release dormant or inactive usernames.
    – Nate Glenn
    Apr 5 at 21:56
9

I don't know how long this has been in place, but now you can add @username message_content in a discussion and that user will be notified.

4
  • Could you say a bit more about where in the interface this can be done? Jun 20, 2013 at 11:10
  • Probably any where you enter "comments" e.g. on an issue.
    – Josh M.
    Jun 20, 2013 at 14:23
  • 1
    Just write "@user ping" in any of issue comments Jul 26, 2013 at 12:05
  • "discussion" == Issue or Pull Request or any comment on a commit, etc.
    – chharvey
    Jul 28, 2016 at 14:49
8

This question has an answer at Stack Overflow.

Although GitHub removed the private messaging feature, there's still an alternative.

GitHub host git repositories. If the user you're willing to communicate with has ever committed some code, there are good chances you may reach your goal. Indeed, within each commit is stored some information about the author of the change or the one who accepted it.

Provided you're really dying to exchange with user user_test

  • Display the public activity page of the user:
    https://github.com/user_test?tab=activity
  • Search for an event stating "user_test pushed to [branch] at [repository]". There are usually good chances, he may have pushed one of his own commits. Ensure this is the case by clicking on the "View comparison..." link and make sure the user is listed as one of the
    committers.
  • Clone on your local machine the repository he pushed to: git clone https://github.com/..../repository.git
  • Go to that directory cd repository
  • Checkout the branch he pushed to: git checkout [branch]
  • Display the latest commits: git log -50

As a committer/author, an email should be displayed along with the commit data.

Note: Every warning related to unsolicited email should apply there. Do not spam.

3
  • Would have been nice to have mentioned that you copied this answer from Stack Overflow ;) Sep 6, 2016 at 15:48
  • 1
    I write this answer when I don't know about copying someone else is forbidden in Stack Overflow, I edited my answer ;) Sep 6, 2016 at 16:59
  • 3
    It's not just a Stack Overflow thing. Plagiarism is bad everywhere. Thank you for identifying the source.
    – ale
    Sep 6, 2016 at 17:12
0

One option is to find the users email address and then email them. Hikido offers a free chrome extension that will show you user's email addresses.

1
  • Since you left this as an answer, I deleted your comment above. However, I don't know that this information adds much to the discussion and does plug a site that a flagger pointed out is perhaps questionable.
    – jonsca
    Dec 1, 2016 at 13:04
0

Open any commit he made in any repository. And you will some info like this

username committed on Dec 18, 2019, 1 parent 69b389d commit 4b87ccc patch diff

Where patch and diff are links, click the patch link and you will see commit info like this

From 4b87ccca84710991f0876d0c051e5e0ff223ac99 Mon Sep 17 00:00:00 2001
From: FirstName LastName <hisemail@example.com>
Date: Tue, 17 Dec 2019 22:51:16 -0500
Subject: commit name

From here you can see his email address

0

This is the current URL to see user events including email (January 2021): https://api.github.com/users/username/events (search the page for "email")

or just https://api.github.com/users/username if they made their mail public on their profile.

This is an update on Porcupine's answer: https://webapps.stackexchange.com/a/107500/261901 (the /public version doesn't work anymore)

I would just write a comment below it, but i don't have the 50 reputation necessary.

0

The method that best worked for me does not require to clone the repo.

I found the answer in this SO post, who took it from Chris Herron @ Sourcecon:

  • Browse someone's commit history (Click commits which is next to branch to see the whole commit history)

  • Click the commit that with the person's username because there might be so many of them

  • Then you should see the web address has a hash concatenated to the URL. Add .patch to this commit URL

  • You will probably see the person's email address there

Example: https://github.com/[username]/[reponame]/commit/[hash].patch

0

You can fetch Github API with a form too, here is an example: https://roneo.org/en/app/github-user-email-finder/

Note the limitations:

  • only the last 6 months of activity are considered
  • false positives may appear as authors of merged PR are added to the list

Not the answer you're looking for? Browse other questions tagged or ask your own question.