Skip to main content

Collection of utility Pythhon scripts to manage code repositories.

Project description

jps-git-repo-utils

Build Publish to PyPI codecov


🧭 Overview

jps-git-repo-utils is a collection of Python-based utility scripts designed to manage and standardize code repositories.
These tools simplify common administrative tasks such as enforcing naming conventions, auditing branch structures, generating repository history reports, and synchronizing version metadata.

✨ Key Features

  • Automated enforcement of branch naming conventions (feature/, bugfix/, hotfix/, release/, etc.)
  • Repository cleanup and archival of inactive branches
  • Consistent versioning and repository metadata management
  • Repository history generation with per-branch summaries and event classification
  • Integration with Jira and CI/CD pipelines for reporting and audit purposes
  • Robust testing framework using pytest with 100% reproducible local runs

🧩 Included Utilities

Script Description
standardize_branches.py Standardizes branch names, prefixes, and folders (feature, bugfix, hotfix, release).
audit_repository.py Audits repository metadata, tags, and release consistency.
repo_history.py Generates detailed repository history reports with per-branch summaries, tag events, and merge timelines.

💻 Example Commands

# Standardize branch naming across a repo
python -m scripts.standardize_branches --repo /path/to/repository

# Generate a full repository history report
python -m scripts.repo_history --global-tags

To explore command options:

jps-git-repo-utils-standardize --help
jps-git-repo-utils-audit --help
jps-git-repo-utils-history --help

⚙️ Installation

make install

🧪 Development Workflow

make fix && make format && make lint
make test

Recent Additions

  • Comprehensive pytest suite for repo_history.py
  • Dummy Git repository fixtures for isolated test execution
  • 6 passing tests and 1 intentionally skipped (network-dependent)

📦 Packaging and Distribution

This project follows semantic versioning and uses GitHub Actions for continuous integration,
PyPI publishing, and test coverage reporting via Codecov.


📜 License

MIT License © Jaideep Sundaram

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jps_git_repo_utils-0.4.0.tar.gz (29.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

jps_git_repo_utils-0.4.0-py3-none-any.whl (24.8 kB view details)

Uploaded Python 3

File details

Details for the file jps_git_repo_utils-0.4.0.tar.gz.

File metadata

  • Download URL: jps_git_repo_utils-0.4.0.tar.gz
  • Upload date:
  • Size: 29.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for jps_git_repo_utils-0.4.0.tar.gz
Algorithm Hash digest
SHA256 6b410ad5b43c2bc2065d3df47e340d8e00066e74a030000fe0bc989b0b7a91bc
MD5 0bef9640819a75057836fa45efcdbbf4
BLAKE2b-256 509130d2d6fd8f04d5725b8faeac6d804b062f74c0ead1012d5e422e1c91b1af

See more details on using hashes here.

File details

Details for the file jps_git_repo_utils-0.4.0-py3-none-any.whl.

File metadata

File hashes

Hashes for jps_git_repo_utils-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1c3e223269230d211ba48fb6d8dc11bdfa1b7a721483d7ef5a57a8d3b75fe92b
MD5 28d86f28ae33e990df7a4e9b25f17016
BLAKE2b-256 bb715dfa25e18ae7cdc1a87e7ba985c282792cb0bbfefcfe5007d41a79e26436

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page