I'd like to contact a developer on GitHub to see how I can help out, etc. I don't see the option anywhere.
12 Answers
You can contact a GitHub user by going to her/his user page (https://github.com/[USERNAME]
) and on the left-hand side, you should see her/his email address if they have provided one. Also, make sure you are currently logged in, otherwise, it might not be visible to you).
This method worked in August 2022
- Copy and paste the next line into your browser (feel free to bookmark it): https://api.github.com/users/xxxxxxx/events/public.
- Find the GitHub username for which you want the email: Replace the xxxxxxx in the URL with the person's GitHub username. Hit Enter.
- Press Ctrl+F and search for “email”.
-
3
-
3FYI 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. Commented Mar 26, 2019 at 0:09
-
This api.github.com/users/xxxxxxx is working link! Commented Jul 6, 2020 at 18:34
-
Yeah the email is
@users.noreply.github.com
so dead end. Commented Nov 27, 2020 at 11:12 -
1
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.
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.
GitHub support does not accept any requests related to namesquatting, despite prohibiting it in their own policy. Denying the requests seems to have started around 2021.
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.
-
Could you say a bit more about where in the interface this can be done? Commented Jun 20, 2013 at 11:10
-
-
1
-
"discussion" == Issue or Pull Request or any comment on a commit, etc.– chharveyCommented Jul 28, 2016 at 14:49
This question has an answer at Stack Overflow by nulltoken.
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.
Just code your own if you are better at it and have a fix or a change. GitHub is open source. Code on GitHub is free to change obviously.
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
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.
For a command-line adventure using a script I've modified:
- Visit https://github.com/DaveJarvis/github-email
- Follow the instructions to install into
$HOME/bin
. - Set your GitHub token.
- Open a new terminal.
- Run:
github-email username
The script automates using GitHub's HTTP REST API to find email addresses associated with Git commit histories. The script will also look for the user's contact information from a few different sources. You could perform all the steps the script takes from within a web browser.
The key line from the script is to retrieve all commits against a particular repository (owned by the user whose email address is desired):
# Find all commits against the repository
$CMD -H "$PARAM_GITHUB_TOKEN" "$API_GITHUB/repos/$ARG_USERNAME/$ARG_REPOSITORY/commits" \
| jq -r ".[] | .commit | .author | $NAME_FORMAT" 2>/dev/null \
| sort \
| uniq
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 <[email protected]>
Date: Tue, 17 Dec 2019 22:51:16 -0500
Subject: commit name
From here you can see his email address
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