No project description provided
Project description
gitnote ✍️
gitnote is a CLI tool that uses AI to automatically generate meaningful Git commit messages based on staged changes.
Overview 🔎
gitnote is an intelligent CLI tool designed for automatically generating commit messages with the help of artificial intelligence. This tool analyzes the staged changes in your Git repository to assist you in writing more relevant and optimized commit messages, improving your Git workflow.
Features ✨
- Smart Commit Message Suggestion: Powered by Hugging Face Hub, this tool suggest commit messages tailored to your staged changes.
- Clear and Enhanced Display: Uses the
richpackage to beautifully render staged changes in the CLI. - User-Friendly CLI Interface: Built with
typer,gitnoteoffers an intuitive and easy-to-use command-line interface.
Installation 📥
To install gitnote, use pip:
pip install gitnote
Initial Setup ⚡
Before using gitnote, take your token from Hugging Face API token (Recommended first!) and run the following command to set the token :
gitnote set-token
You can also set the token like this :
gitnote set-token "<token>"
Note: Don't forget put token inside double quotes on second way!
Usage 💡
Available Commands
-
gitnote diffDisplays the staged changes in a visually enhanced format. If no changes are staged, the following message is displayed:No changes to display.
-
gitnote generateTakes the staged changes (if any) and sends them to the Hugging Face Hub to generate an AI-driven commit message. If there are no staged changes, you’ll see:⚠️ No staged changes found! Please make sure you've staged your changes using 'git add' and try again.
Help Command
For a full list of commands and usage information, use:
gitnote --help
Dependencies 🛠️
This project is built with the following key packages:
typer: For creating a command-line interface (CLI)huggingface-hub: For connecting to Hugging Face AI models to generate intelligent commit messagesrich: For beautifully rendering the staged changes in the CLI
The complete list of dependencies can be found in the
requirements.txtfile.
gitnote preview :
License 🧾
This project is licensed under the MIT License.
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file gitnote-0.1.0.tar.gz.
File metadata
- Download URL: gitnote-0.1.0.tar.gz
- Upload date:
- Size: 7.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d367ac9bb86556e33092823c8e13baedebae06854cbfd00b099ed8a54414f595
|
|
| MD5 |
b25271e66e8c8dd5fdfc9f11b3557f96
|
|
| BLAKE2b-256 |
ddeb7f6b2144ab16ebb9a9c0592cdd90cefefdfcc72c3e507f84cfc2e185ad53
|
Provenance
The following attestation bundles were made for gitnote-0.1.0.tar.gz:
Publisher:
release.yaml on MosTafa2K/gitnote
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
gitnote-0.1.0.tar.gz -
Subject digest:
d367ac9bb86556e33092823c8e13baedebae06854cbfd00b099ed8a54414f595 - Sigstore transparency entry: 153770680
- Sigstore integration time:
-
Permalink:
MosTafa2K/gitnote@9968d7f2844fc420757703f4275d963a9b3e48a2 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/MosTafa2K
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yaml@9968d7f2844fc420757703f4275d963a9b3e48a2 -
Trigger Event:
push
-
Statement type:
File details
Details for the file gitnote-0.1.0-py3-none-any.whl.
File metadata
- Download URL: gitnote-0.1.0-py3-none-any.whl
- Upload date:
- Size: 9.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/5.1.1 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e5283ced4c695506d73a2e53e885ae3e4b1280919cb466b49bdfbebb6abe14ac
|
|
| MD5 |
352fe827d15b928c4ff66deceed7d807
|
|
| BLAKE2b-256 |
0b3be2d94d25be8e2f72633f573da8d507298bf9ad7cc205fb2284aecce42046
|
Provenance
The following attestation bundles were made for gitnote-0.1.0-py3-none-any.whl:
Publisher:
release.yaml on MosTafa2K/gitnote
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
gitnote-0.1.0-py3-none-any.whl -
Subject digest:
e5283ced4c695506d73a2e53e885ae3e4b1280919cb466b49bdfbebb6abe14ac - Sigstore transparency entry: 153770681
- Sigstore integration time:
-
Permalink:
MosTafa2K/gitnote@9968d7f2844fc420757703f4275d963a9b3e48a2 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/MosTafa2K
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yaml@9968d7f2844fc420757703f4275d963a9b3e48a2 -
Trigger Event:
push
-
Statement type: