- Notifications
You must be signed in to change notification settings - Fork2
Outputs all the contributors for given open GitHub project
License
koppor/github-contributors-list
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
Builds a contributor list based on information available on GitHub.It reads the information of pull requests including theCo-authored-by: notes in commit messages.
GitHub's APIdoes NOT include users listed as "Co-authored-by:".Thefore, the commit messages need to parsed "manually".
It is a rewrite ofgithub-contributors-list tosupportCo-authored-by:.
Seehttps://blog.jabref.org/2024/04/03/JabRef5-13/#special-thanks for real-world usage.
- Install jbang.E.g.,
- Linux/macOS:
curl -Ls https://sh.jbang.dev | bash -s - app setupor - Windows (Powershell):
iex "& { $(iwr -useb https://ps.jbang.dev) } app setup"
- Linux/macOS:
- Add
oauth=...to~/.githubwith...being yourGitHub personal access token. SeeGitHub API for Java for details. cdto the repository you want to analyze.jbang gcl@koppor/github-contributors-list
Usage: jbang gcl@koppor/github-contributors-list [-lhV] [--startrevision=<startCommitRevStr>] [--endrevision=<endCommitRevStr>] [--repository=<ownerRepository>] [--cols=<cols>] [--filter=<ignoredUsers>]... [--filter-emails=<ignoredEmails>]... [-m=<String=String>]... [<repositoryPath>] [<repositoryPath>] The path to the git repository to analyse. --cols=<cols> Number of columns --endrevision=<endCommitRevStr> The last revision to check (tag or commit id). Included. --filter=<ignoredUsers> --filter-emails=<ignoredEmails> -h, --help Show this help message and exit. -l, --[no-]github-lookup Should calls be made to GitHub's API for user information -m, --login-mapping=<String=String> Mapping of GitHub logins to names. Format: name=login --repository=<ownerRepository> The GitHub repository in the form owner/repostiory. E.g., JabRef/jabref --startrevision=<startCommitRevStr> The first revision to check (tag or commit id). Excluded. -V, --version Print version information and exit.Example:
Usage: jbang gcl@koppor/github-contributors-list --repository JabRef/jabref c:\git-repositories\jabref --startrevision=v5.14 --endrevision=v5.15At the end, non-found committers are listed.The format is<used name> <PR link> <commit link>.Example:
Anish.Pal https://github.com/JabRef/jabref/pull/10829 https://github.com/JabRef/jabref/pull/10829/commits/d2d84923df2c6c7d59559da8d583ae17dc803c3dWith that information, one can create a mapping from the committer name to the GitHub username.In this case:Anish.Pal=pal-anish
The tool is implemented as single pass over the commits of the repository.It uses a cache to store the information of contributors.Thus, repeated runs could update contributor information.For instance, if a user first appears as "Co-authored-by:" and later as a pull request author, the username could be determined better.
In case of issues, try to deletegcl.mv to start with a fresh cache.
⚠ In case contributors are not ignored, please deletegcl.mv and try again. ⚠
gcl.mvis anMVStore caching contributor information returned by GitHub's API.- Dependencies of
gcl.javacannot be updated automatically.dependabot-core#9406. - Use
writer.level = TRACEin tinylog.properties for debugging.
- Manually curate all contributors usingAll Contributors
- Usegithub-contributors-list and accept that
Co-authored-by:is ignored.
About
Outputs all the contributors for given open GitHub project
Topics
Resources
License
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Uh oh!
There was an error while loading.Please reload this page.
Contributors3
Uh oh!
There was an error while loading.Please reload this page.