Releases: 7PH/git-contribution-mapper
Releases · 7PH/git-contribution-mapper
v1.0.0
🔥 Release preview
Runs are now idempotent: the same source commits always produce the same monorepo hashes, so pushing twice is a no-op. No more forced pushes on every run.
# First run - pushes new commits
uv run python git-contribution-mapper.py
bash scripts/monorepo-push.sh
# Second run - nothing to push
uv run python git-contribution-mapper.py
bash scripts/monorepo-push.sh
# → Everything up-to-date🚀 Features
- Add
--dry-run/-nflag to preview what would run without making changes - Add
--force-pushflag for when upstream history has changed - Support any Git host, not just GitLab (#8)
- Configure the main branch per-repository via
MAIN_BRANCHenv var (#2)
🐞 Bug fixes
- Fix idempotent runs: set committer date = author date so cherry-picks are deterministic (Fixes #3)
- Fix linear history: use cherry-pick instead of merge to avoid merge commits in the monorepo (Fixes #7)
- Fix commit deduplication: include commit hash in blob content so identical-content commits are preserved (Fixes #4)
💻 Code quality
- Replace
os.system()shell call withshutil.copy()to prevent command injection (#10)
v0.1.0
🔥 Release preview
Initial release of gitlab-contribution-mapper
🚀 Features
Merge the anonymized history of multiple GitLab repositories into a single repository which can safely be pushed to GitHub to fill your GitHub contribution graph.
- Support multiple repositories
- Only keep your commits
- Empties the commits content
- Helper to auto-generate your
.envfile