{"id":19014970,"url":"https://github.com/adfinis/git-runstats","last_synced_at":"2026-05-15T11:34:57.743Z","repository":{"id":57434818,"uuid":"269677983","full_name":"adfinis/git-runstats","owner":"adfinis","description":"Display git contribution statistics (insertions + deletions)","archived":false,"fork":false,"pushed_at":"2020-06-25T15:09:28.000Z","size":48,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-01-14T11:23:48.993Z","etag":null,"topics":["developer-tools","git","statistics"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/adfinis.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-06-05T15:08:25.000Z","updated_at":"2023-08-11T18:13:50.000Z","dependencies_parsed_at":"2022-09-04T15:25:05.005Z","dependency_job_id":null,"html_url":"https://github.com/adfinis/git-runstats","commit_stats":null,"previous_names":["adfinis-sygroup/git-runstats"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/adfinis/git-runstats","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adfinis%2Fgit-runstats","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adfinis%2Fgit-runstats/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adfinis%2Fgit-runstats/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adfinis%2Fgit-runstats/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/adfinis","download_url":"https://codeload.github.com/adfinis/git-runstats/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adfinis%2Fgit-runstats/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33065580,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-13T13:14:54.681Z","status":"online","status_checked_at":"2026-05-15T02:00:06.351Z","response_time":103,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["developer-tools","git","statistics"],"created_at":"2024-11-08T19:34:31.573Z","updated_at":"2026-05-15T11:34:57.725Z","avatar_url":"https://github.com/adfinis.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"git-runstats\n============\n\nDisplay git contribution statistics (insertions + deletions)\n\n[![demo](https://raw.githubusercontent.com/adfinis-sygroup/git-runstats/master/runstats_demo.svg)](https://raw.githubusercontent.com/adfinis-sygroup/git-runstats/master/runstats_demo.svg)\n\nAnswers the questions: \"Who dunnit?\", \"Who can I ask?\"\n\nUsage\n-----\n\n```\nUsage: git-runstats [OPTIONS] [GITARGS]...\n\n  Most arguments of `git log` will work as GITARGS, but do not change the\n  output-format. Use -- to separate GITARGS.\n\nOptions:\n  -l, --limit INTEGER  Number of commits to read\n  --tty / --no-tty     Enable tty\n```\n\nLive-stats\n\n```bash\ngit runstats\n```\n\nStats for `README.md`\n\n```bash\ngit runstats README.md\n```\n\nDisplay help\n\n```bash\ngit-runstats --help\n```\n\nNon-live stats with limit\n\n```bash\ngit runstats -l 1000 | less\n```\n\nNon-live stats reversed\n\n```bash\ngit runstats -l 1000 | head -n -1 | sort -n\n```\n\nShow stats in branch\n\n```bash\ngit runstats master..my_branch\n```\n\nShow stats in current branch\n\n```bash\ngit runstats master..\n```\n\nShow stats from 2019\n\n```bash\ngit runstats -- --since=2019-01-01 --until=2019-12-31\n```\n\nWho knows most about the rust alpine linux package\n\n```bash\ncd aports\ngit runstats community/rust\n```\n\nInstall\n-------\n\n```bash\npip install git-runstats\n```\n\nWhy\n---\n\nIn comparison to shortlog runstats gives immediate feedback and counts changes\ninstead of commits. Press Ctrl-C once you have enough information. Shortlog can\nalso be very wrong:\n\n```bash\n$\u003e cd linux\n$\u003e git shortlog -s -n net/802/ | head -n 10\n    11  Stephen Hemminger\n    10  Arnaldo Carvalho de Melo\n     9  Eric Dumazet\n     6  Eric W. Biederman\n     5  Alexey Dobriyan\n     5  David S. Miller\n     4  Paul Gortmaker\n     4  David Ward\n     3  Linus Torvalds\n     3  Adrian Bunk\n```\n\nversus\n\n```bash\n$\u003e cd linux\n$\u003e git runstats net/802/ | head -n 10\n      1556  Linus Torvalds\n       931  David Ward\n       749  Patrick McHardy\n       104  Stephen Hemminger\n        98  Eric Dumazet\n        65  Pavel Emelyanov\n        51  Thomas Gleixner\n        47  Johannes Berg\n        40  Alexey Dobriyan\n        30  Joe Perches\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadfinis%2Fgit-runstats","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fadfinis%2Fgit-runstats","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadfinis%2Fgit-runstats/lists"}