{"id":16876873,"url":"https://github.com/soxoj/gitcolombo","last_synced_at":"2026-03-10T04:03:34.013Z","repository":{"id":103371243,"uuid":"244056053","full_name":"soxoj/gitcolombo","owner":"soxoj","description":"🧬 Extract and analyze contributors info from git repos","archived":false,"fork":false,"pushed_at":"2023-10-27T18:54:06.000Z","size":23,"stargazers_count":85,"open_issues_count":1,"forks_count":11,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-10-25T19:51:48.611Z","etag":null,"topics":["authors","bitbucket","committer","committers","emails","git","gitlab","osint"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/soxoj.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2020-02-29T23:19:43.000Z","updated_at":"2025-09-15T11:33:32.000Z","dependencies_parsed_at":null,"dependency_job_id":"4e264785-7e8b-47ca-96b4-3b2be77dc267","html_url":"https://github.com/soxoj/gitcolombo","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/soxoj/gitcolombo","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/soxoj%2Fgitcolombo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/soxoj%2Fgitcolombo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/soxoj%2Fgitcolombo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/soxoj%2Fgitcolombo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/soxoj","download_url":"https://codeload.github.com/soxoj/gitcolombo/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/soxoj%2Fgitcolombo/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30324185,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-10T01:36:58.598Z","status":"online","status_checked_at":"2026-03-10T02:00:06.579Z","response_time":106,"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":["authors","bitbucket","committer","committers","emails","git","gitlab","osint"],"created_at":"2024-10-13T15:40:45.817Z","updated_at":"2026-03-10T04:03:33.984Z","avatar_url":"https://github.com/soxoj.png","language":"Python","readme":"# Gitcolombo\n\n![Logo](https://telegra.ph/file/0730b125282266989e861.png)\n\n### Description\n\nOSINT tool to extract info about persons from git repositories: common names, emails, matches between different (as it may seems) accounts.\n\n### Using\n\n1. **Install git**\n\n2. Run:\n\n        # from any git url\n        ./gitcolombo.py -u https://github.com/Kalanchyovskaia16/newlps\n\n        # from directory, recursively\n        ./gitcolombo.py -d ./newlps -r\n\n        # from all GitHub personal/org repos by nickname\n        ./gitcolombo.py --nickname LubyRuffy\n\nFor batch cloning from Gitlab and Bitbucket group repos you can use [ghorg](https://github.com/gabrie30/ghorg).\n\nOutput:\n\n- verbose persons info\n  - name\n  - email\n  - number of appearences as author/committer \n  - other persons that person can be\n\n- emails used for the same name\n- different names for the same person\n- general statistics\n\n### Details\n\n[RUS] https://telegra.ph/Gitcolombo---OSINT-v-GitHub-03-02\n\n### What's the difference between git author and committer?\n\nTL;DR\n\n- author wrote the code (make the patch)\n- commiter commit it to the repo (rewrite history, make pull/merge requests...)\n\nNice explanation: https://stackoverflow.com/questions/18750808/difference-between-author-and-committer-in-git\n\nVery often developers make inaccurate commits with the one name/email (e.g. work account), then change to the right (e.g. personal account) and make `git commit --amend`, but forget to change the author of the commit.\nThis way we can use it for OSINT as match of names/emails from git history.\n\n### TODO\n\n- [x] Total statistics for repos in a directory\n- [ ] Check different names for every email\n- [x] GitHub support: clone all repos from account/group\n- [ ] GitHub support: api pagination\n- [x] GitHub support: extract links to accounts from commit info\n- [ ] Exclude \"system\" accounts (e.g. noreply@github.com)\n- [ ] Probabilistic graph links based on same names/emails and Levenshtein distance\n- [ ] Other popular git platforms: Gitlab, Bitbucket and also\n","funding_links":[],"categories":["[](#table-of-contents) Table of contents"],"sub_categories":["[](#github)Github"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsoxoj%2Fgitcolombo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsoxoj%2Fgitcolombo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsoxoj%2Fgitcolombo/lists"}