{"repo":"2kDarki/pnp","free":true,"listed":false,"github":"https://github.com/2kDarki/pnp","clone":"git clone https://github.com/2kDarki/pnp.git","description":"Push-and-publish: CLI tool to push commits, bump tags, and publish releases including GitHub releases.","language":"Python","stars":13,"topics":["automation","git","github","gitops","workflow-automation"],"license":"MIT","category":"workflow-automation","readme_excerpt":"pnp — Push and Publish pnp is a lightweight CLI tool to automate common Git workflow steps for any project type: 1. Staging and committing changes 2. Pushing to Git remotes 3. Automatically bumping semantic version tags 4. Publishing releases (including GitHub releases) It's designed for fast iteration, CI integration, and monorepo-aware projects. --- Features - Initialize Git repo if not present - Detect uncommitted changes and auto-commit - Push commits to a remote branch (with optional forced push) - Bump semantic version tags ( major , minor , patch ) automatically - Generate changelog from commit messages between tags - Optional GPG signing of tags - Pre-push hooks for tests, linters, or build steps - CI mode: non-interactive, fail-fast for automation pipelines - Monorepo support: operate on sub-packages - GitHub releases: create releases from tags with optional asset uploads - Dry-run mode for safe testing - Optional git-machete checks/sync before push/publish --- Project Detection pnp treats a directory as a project root when one or more common manifest markers are present: - pyproject.toml - package.json - go.mod - Cargo.toml - pom.xml - build.gradle / build.gradle.kts - composer.json - Gemfile - mix.exs - Project.toml These markers are used for monorepo subproject detection and doctor metadata checks. --- Support Matrix Area Supported --- --- Python 3.10, 3.11, 3.12 OS Linux, macOS, Windows Git 2.30+ Shells POSIX sh, Bash/Zsh/Fish, PowerShell/CMD --- Installation Ins","default_branch":null,"files":null,"tree":[],"storefront":"/r/2kDarki","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/2kDarki/pnp/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}