Skip to main content

A tool to simplfy git operations

Project description

logo

GitEase

Version Python License Downloads Documentation Status

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

$ 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

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

gitease-0.0.11.tar.gz (9.4 kB view details)

Uploaded Source

Built Distribution

gitease-0.0.11-py3-none-any.whl (9.9 kB view details)

Uploaded Python 3

File details

Details for the file gitease-0.0.11.tar.gz.

File metadata

  • Download URL: gitease-0.0.11.tar.gz
  • Upload date:
  • Size: 9.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.11.4 Darwin/22.4.0

File hashes

Hashes for gitease-0.0.11.tar.gz
Algorithm Hash digest
SHA256 36918f33eb3bb391c5de768d87af832355eeb3ac80fa377edbed0b7d3192eb11
MD5 2530d68a454eec5afd7fd880186c357c
BLAKE2b-256 7b6bdfa8a1d1c703681ca557b7a90e33832bd3ae2038aecb01d640d045460347

See more details on using hashes here.

File details

Details for the file gitease-0.0.11-py3-none-any.whl.

File metadata

  • Download URL: gitease-0.0.11-py3-none-any.whl
  • Upload date:
  • Size: 9.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.11.4 Darwin/22.4.0

File hashes

Hashes for gitease-0.0.11-py3-none-any.whl
Algorithm Hash digest
SHA256 9ef4cfc0cdcdde1327aed1925d0bab8e9609efef37b59d07134b618b6fd5919d
MD5 0533f87032954500785be3920048cae7
BLAKE2b-256 00db79c975f299740a061e1485c52fee0d34dede08581eea7bf101ae1ce7ae20

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