Find e-mail addresses of a Github users from their commit logs.
Fue is short for "Finding Unicorn Engineers".
gem install fue
The find
command looks through user's initial repository commits.
$ fue --verbose find defunkt
Chris Wanstrath <[email protected]>
Chris Wanstrath <[email protected]>
The contributors
command looks through a git log of contributors, then fetches their e-mails.
$ fue --verbose contributors defunkt/colored
defunkt: Chris Wanstrath <[email protected]>
kch: Caio Chassot <[email protected]>
By default fue find
and fue contributors
will include no-reply emails such as [email protected]
. Exclude those with --no-noreply
.
fue find --no-noreply kch
fue --verbose contributors --no-noreply defunkt/colored
By default fue find
and fue contributors
will include emails gathered from Signed-off-by
text in commit descriptions. Exclude those with --no-signed-off-by
.
fue find --no-signed-off-by defunkt
fue --verbose contributors --no-signed-off-by defunkt/colored
By default the code looks at 1 commit from the last 10 repositories. You can look at more repositories (breadth) and more commits (depth). The maximum value for depth is 100, enforced by Github. Fue will iterate over a number of repositories larger than 100.
$ fue find --breadth=100 --depth=5 defunkt
Chris Wanstrath <[email protected]>
Chris Wanstrath <[email protected]>
defunkt <[email protected]>
fue help
Displays additional options.
Fue will ask you to create a personal access token and will store it in the keychain. The access token should be created with public_repo
scope here. You can also skip the prompts and use a previously obtained token with -t
or by setting the GITHUB_ACCESS_TOKEN
environment variable.
See Creating a Personal Access Token for the Command Line for more information about personal tokens.
If you run into an unexpected error, try getting a stack trace with GLI_DEBUG=true
.
$ GLI_DEBUG=true fue find dblock
FrozenError: can't modify frozen String
/Users/dblock/source/dblock/fue/lib/fue/auth.rb:97:in `get_secure'
/Users/dblock/source/dblock/fue/lib/fue/auth.rb:80:in `get_password'
/Users/dblock/source/dblock/fue/lib/fue/auth.rb:50:in `password'
/Users/dblock/source/dblock/fue/lib/fue/auth.rb:59:in `block in github'
There are a few feature requests and known issues. Please contribute! See CONTRIBUTING.
Copyright (c) 2018-2022, Daniel Doubrovkine, Artsy, with help from Orta.
This project is licensed under the MIT License.