Skip to main content

Git utility for auto-committing and concurrent pushing

Project description

git pp

Git utility for auto-committing and concurrent pushing.

Powered by asyncio, with no dependency besides python>=3.10.

Features

  • Auto-stages and commits with custom or generated commit messages
  • Pushes to multiple or all remotes of a git repository concurrently with asyncio
  • Operates on any number of git repositories at the same time

Demo

asciicast

In this demo, git pp did the following in ~/config and ~/gui repos:

  • (Concurrently) Auto staged all changes and commits with ISO-8601 timestamps as commit messages;
  • (Concurrently) Pushed the changes in the checked out branch to all of their remotes, in this case, they’re origin and lab.

Installation

pipx

This is the recommended installation method.

$ pipx install git-pp

pip

$ pip install git-pp

AUR

For Archlinux.

$ yay -S python-git-pp

Usage

$ git pp -h
usage: git pp [-h] [-m COMMIT_MESSAGE] [-v] [-so] [-p] [-po] [-r REMOTE [REMOTE ...]] [-b BRANCH] [-f] [-t TIMEOUT] [DIRS ...]

Git utility for auto-committing and concurrent pushing

positional arguments:
  DIRS                  Dirs to operate on (default: ['.'])

options:
  -h, --help            show this help message and exit
  -m COMMIT_MESSAGE, --commit-message COMMIT_MESSAGE
                        commit message (default: None)
  -v, --version         show program's version number and exit
  -so, --status-only    Prints status only (default: False)
  -p, --push            Push to all remotes (default: False)
  -po, --push-only      Push to all remotes, without pre_pull (default: False)
  -r REMOTE [REMOTE ...], --remote REMOTE [REMOTE ...]
                        Remote name (default: None)
  -b BRANCH, --branch BRANCH
                        Branch name (default: None)
  -f, --force           Force push (default: False)
  -t TIMEOUT, --timeout TIMEOUT
                        Timeout for a single push (default: None)

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

git-pp-1.4.1.tar.gz (7.2 kB view details)

Uploaded Source

Built Distribution

git_pp-1.4.1-py3-none-any.whl (8.2 kB view details)

Uploaded Python 3

File details

Details for the file git-pp-1.4.1.tar.gz.

File metadata

  • Download URL: git-pp-1.4.1.tar.gz
  • Upload date:
  • Size: 7.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.10.2 Darwin/21.4.0

File hashes

Hashes for git-pp-1.4.1.tar.gz
Algorithm Hash digest
SHA256 8f9e2ce64972dd857b291d76db759d211fd9b94a4b87e38b54014e6c8b383ce2
MD5 c266cd243a4a55612e6434d73852c699
BLAKE2b-256 1dcbf3fcfe6279f14e722df08503e34b99316620bc301829e8aa226aba37b1cc

See more details on using hashes here.

File details

Details for the file git_pp-1.4.1-py3-none-any.whl.

File metadata

  • Download URL: git_pp-1.4.1-py3-none-any.whl
  • Upload date:
  • Size: 8.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.10.2 Darwin/21.4.0

File hashes

Hashes for git_pp-1.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 9a46d06864c9529a6562480422e3c28ab66dfcd2a0ef5f45981548826053cf52
MD5 f072f8278bbac463659b7388fb9c2162
BLAKE2b-256 abdc3bdaa66cc385de257c120c2062759141e235e72cbc41579d38e6fa97456c

See more details on using hashes here.

Supported by

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