GitEase
A tool to simplify git usage with sprinkles of AI magic.
Humans think in simpler terms than git operates in. This tool aims to bridge that gap by providing a simpler language to do common git tasks. Plus an LLM can write your commit messages for you.
You can load recent information with gs load, save current changes with gs save and share them with gs share.
Behind the scenes it's exactly what you would expect from git, but with a simpler interface.
Install
- Get an openai api key
$ export OPENAI_API_KEY=...
$ pip install gitease
- If OPENAI_API_KEY is not set, you will be prompted to enter a commit message manually.
Usage
Within a repo, run:
$ ge --help
Commands:
--help: Show this message and exit.
save <message>: Add and commit files to git. Massage is generated if not provided
share <message>: Share to remote - Add, commit and push changes to git. Massage is generated if not provided
load : Pull recent updates from git
message: Generate commit message from diff using AI.
undo: Undo last git action - only works using AI
Examples
$ ge save
> Entering new StuffDocumentsChain chain...
> Entering new LLMChain chain...
Prompt after formatting:
Write a concise summary of the following:
...
> Finished chain.
Your commit message is:
docs: Update documentation, configuration, and index files
This commit updates the documentation, configuration, and index files for the project, including Makefile,
conf.py, and index.rst. These changes provide information about the project, its features, and quickstart
instructions. Additionally, it updates the version of gitease from 0.0.5 to 0.0.6.
To confirm, press Enter.
Otherwise, write your own message:
Press CTRL+C to cancel
Response:
# Add and Commit all python files in src with the message "feat: Add new script"
ge save -a 'src/*.py' -m 'feat: Add new script'
# Add multiple files
ge save -a README.md -a gitease/cli.py
# Add and commits everything without prompting for validation
ge save -y
# Add the README.md file and commit with a generated message
ge share -a README.md -y
# Add and commit README.md file with "upload readme" message, merges to main, and deletes the original branch
ge share -a README.md -m "upload readme" --merge=main --delete
# Pull recent changes from git
ge load
$ ge undo
Welcome to GitEase
Last git action is: Update README and CLI files
A revert command is: git reset HEAD@{0}
Shell I run the command for you? [y/n]:
Running: git reset HEAD@{0}
Unstaged changes after reset:
M README.md
M gitease/cli.py
Metadata
Release files for gitease 0.0.11
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 |
|---|---|---|---|---|
| gitease-0.0.11.tar.gz | 9.4 kB | Without provenance | Details for gitease-0.0.11.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| gitease-0.0.11-py3-none-any.whl | Python 3 | none | any | Details for gitease-0.0.11-py3-none-any.whl |
Total release size: 19.3 kB
Release files / gitease-0.0.11.tar.gz
| Download URL | gitease-0.0.11.tar.gz |
|---|---|
| Size | 9.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
36918f33eb3bb391c5de768d87af832355eeb3ac80fa377edbed0b7d3192eb11
|
|
BLAKE2b-256 checksum How to use checksums |
7b6bdfa8a1d1c703681ca557b7a90e33832bd3ae2038aecb01d640d045460347
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.5.1 CPython/3.11.4 Darwin/22.4.0
|
Release files / gitease-0.0.11-py3-none-any.whl
| Download URL | gitease-0.0.11-py3-none-any.whl |
|---|---|
| Size | 9.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9ef4cfc0cdcdde1327aed1925d0bab8e9609efef37b59d07134b618b6fd5919d
|
|
BLAKE2b-256 checksum How to use checksums |
00db79c975f299740a061e1485c52fee0d34dede08581eea7bf101ae1ce7ae20
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.5.1 CPython/3.11.4 Darwin/22.4.0
|
Security for gitease 0.0.11
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.