Git Portfolio
Project description
Features
Configure multiple working repositories.
Batch git commands with subcommands: add, branch, checkout, commit, diff, fetch, init, merge, mv, pull, push, rebase, reset, rm, show, switch, status and tag.
Batch API calls on GitHub: create/close/reopen issues, create/close/reopen/merge pull requests and delete branches by name.
Batch Poetry commands such as: add, version patch, install or update.
Requirements
Create an auth token for GitHub, with the repo privileges enabled by clicking on Generate new token. You will be asked to select scopes for the token. Which scopes you choose will determine what information and actions you will be able to perform against the API. You should be careful with the ones prefixed with write:, delete: and admin: as these might be quite destructive. You can find description of each scope in docs here.
Important: safeguard your token (once created you won’t be able to see it again).
Install git (optional) - this is needed for all git commands. For colored outputs please use the configuration:
$ git config --global color.ui always
Installation
You can install Git Portfolio via pip from PyPI:
$ pip install git-portfolio
Basic usage
Create initial configuration with:
$ gitp config init
Execute all the commands you want. Eg.:
$ gitp issues create # create same issue for all projects
$ gitp checkout -b new-branch # checks out new branch new-branch in all projects
$ gitp poetry version minor # bumps minor version of all projects that have pyproject.toml version
Note: by convention GitHub commands are always the resource name and action: eg. branches delete, issues create and prs merge (for pull requests). This avoid conflicts with batch git commands, as in gitp branch (executes git command) and gitp branches delete (execute operations using GitHub API).
Complete instructions can be found at git-portfolio.readthedocs.io.
Contributing
Contributions are very welcome. To learn more, see the Contributor Guide.
License
Distributed under the terms of the MIT license, Git Portfolio is free and open source software.
Issues
If you encounter any problems, please file an issue along with a detailed description.
Credits
This project was generated from @cjolowicz’s Hypermodern Python Cookiecutter template.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file git_portfolio-1.1.1.tar.gz
.
File metadata
- Download URL: git_portfolio-1.1.1.tar.gz
- Upload date:
- Size: 18.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.11.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6e5f5096ea3af28ee9fd3b37c142d57148993e7fa14649cddd16584f0143ba36 |
|
MD5 | e04fd44a796ca6bb8d06723b5d1373e5 |
|
BLAKE2b-256 | 444f474c69116e17ad8eda2e96764d2ebb90b2a759614395168c8c7315e0a9a7 |
File details
Details for the file git_portfolio-1.1.1-py3-none-any.whl
.
File metadata
- Download URL: git_portfolio-1.1.1-py3-none-any.whl
- Upload date:
- Size: 26.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.11.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ed023ae8b03ec89a737b8e11914392e25ba6506f816fa032c77b527c2c60583a |
|
MD5 | 1f5530b259877038b464b4da6fdf08f7 |
|
BLAKE2b-256 | 557e0d073cfbd4442483bc4c0e5a13d20efae3cabcc9353b7e1a236f087e1325 |