Git Improved
Python package to add helpful git commands.
Installation
This package is available from PyPI
It can be installed using
pip install git-improved
Additional commands
git template install [-h] [--branch BRANCH] [--user USER] [--token TOKEN] alias origin
Install a template from a remote git repository.
positional arguments:
- alias: the name you want to use locally to reference this template
- origin: url of the repository where target template is hosted
optional arguments:
- --branch BRANCH: branch of the repo containing the template (default: main)
- --user USER: username used to autenticate if required
- --token TOKEN: pass a token or password to authenticate if required
git template list [-h] [search]
List available templates.
positional arguments:
- search: (optional) python-style regex that can be used to filter output
git template update [-h] [-v] [templates [templates ...]]
Pull last version of the template from its git repository.
positional arguments:
- templates: (optional) if you pass a list of templates, only these templates will be updated...
optional arguments:
- --verbose: display additional informations concerning updated templates...
git template rm [-h] templates [templates ...]
Remove templates
positional arguments:
- templates: alias(es) of the template(s) to remove
git setup --template <template_alias> DIRECTORY
Initialize project structure.
- template_alias: alias of the template used to initialize project structure.
- directory: path to the folder where project must be initialized. (may be . for current folder)
git wip [category] [description]
Create a branch to work on something.
- Branch has a category that describe kind of work. (e.g. Feature, CI/CD, Documentation, ...)
- Description explain what happens on this branch. If not passed, it is prompted.
git done
Merge current branch in main branch.
- Update [unreleased] section of changelog to reflect changes from current branch
- Merge current branch into main in a single commit (contains description of squashed commits)
git cancel
- Without arguments: Delete current branch from local and remote.
- With
-ioption: Prompt names of multiple branches to delete
git release [--version VERSION | --patch | --minor | --major]
Deploy a new release for current project.
- Increment version in all files it is referenced (configure in setup.cfg)
- Replace [unreleased] section of changelog with new version.
- Create a file in
docs/releasesto document this release.
git unrelease [-i] [version]
Delete a release from GitHub.
- You can pass the version of the release to delete (or a coma separated list of versions)
- Otherwise, use
-ioption to be prompted for versions to delete. - You can't pass both
versionand-iflag.
RoadMap
Must
Handle changelog/squash message generation when more than one section is changed
Add roadmap/assign commands to avoid many people working on same feature
- Display a warning in save command if working on main branch
- Propose to create a wip branch from current changes to avoid commiting directly...
- Add an option to reset X last commits from main, put them on a branch, an perform magic merge.
- Add an empty github action that run on unrelease. (can be used to remove packages from registries when tag is deleted)
Should
- Study interesting uses cases of a rollback command that cancel changes introduced by a commit
- Improve save command by adding an interactive mode to select staged files
- Add a
--no-changelogoption todonecommand that indicates to not update changelog on merge.
Could
- Define a message syntax that indicates that a commit don't go in changelog (e.g prefix with ;)
- Require user to be logged into git using a token.
- Then retrieve author information from github to put in changelog
Metadata
Release files for git-improved 0.1.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| git-improved-0.1.5.tar.gz | 17.4 kB | Without provenance | Details for git-improved-0.1.5.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| git_improved-0.1.5-py3-none-any.whl | Python 3 | none | any | Details for git_improved-0.1.5-py3-none-any.whl |
Total release size: 38.4 kB
Release files / git-improved-0.1.5.tar.gz
| Download URL | git-improved-0.1.5.tar.gz |
|---|---|
| Size | 17.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
17194a32df1de25afc0cbc638292bf95d9ee41005ae92f641bc79906e44c4c70
|
|
BLAKE2b-256 checksum How to use checksums |
9b8f77bf86d31f63f7fbdf4c7d5d393d61cc56cf7ced506007e9f7e438d6f6c8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.55.1 CPython/3.9.1
|
Release files / git_improved-0.1.5-py3-none-any.whl
| Download URL | git_improved-0.1.5-py3-none-any.whl |
|---|---|
| Size | 21.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
43e411d3c9f138b84207c5a15c1af6d9638e5bd6d3c827b99671ef4d115ebbde
|
|
BLAKE2b-256 checksum How to use checksums |
9dd12eb4cede105f0da651d047415467a0d629acf021519bbf0ab9764913942a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.55.1 CPython/3.9.1
|
Security for git-improved 0.1.5
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.