Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/andre-filho/commit-helper
A python program that helps you write commits following commit conventions
https://github.com/andre-filho/commit-helper
cli commit commit-conventions commit-helper commit-message commithelper dev git git-commit git-commit-format git-commit-messages github hacktoberfest hacktoberfest2020 helper utility yml
Last synced: about 2 months ago
JSON representation
A python program that helps you write commits following commit conventions
- Host: GitHub
- URL: https://github.com/andre-filho/commit-helper
- Owner: andre-filho
- License: gpl-3.0
- Created: 2018-08-22T03:08:22.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2024-11-01T15:16:52.000Z (3 months ago)
- Last Synced: 2024-11-25T09:07:29.631Z (2 months ago)
- Topics: cli, commit, commit-conventions, commit-helper, commit-message, commithelper, dev, git, git-commit, git-commit-format, git-commit-messages, github, hacktoberfest, hacktoberfest2020, helper, utility, yml
- Language: Python
- Homepage: https://pypi.org/project/commit-helper/
- Size: 1.66 MB
- Stars: 19
- Watchers: 3
- Forks: 4
- Open Issues: 10
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
![]()
Commit Helper
## What does it do?
The commit-helper do exactly what it's name suggest: helps you create and maintain your commit policy by tailoring your commit message into a commit convention.## Why should I use this?
Keeping a commit policy may sound like an easy thing to do, but in reality we both know that it isn't.Sometimes we, the developers, go _full-loco_ while programming and make mistakes when commiting. That's fine, everyone makes mistakes. But, what if those mistakes could be avoided?
## Screenshots
### Initial commit
### Normal commit
### Commit without generating a configuration file
### Co-authored commit
### Fast commit
### Debugging and commiting
### All-in-one commit
### Help
### Getting help for writing in a convention
## Installation
In order to install one of our older versions, check our [previous releases](PREVIOUS_VERSIONS). To install the latest (pip) version, just follow the commands below:
```bash
$ pip3 install commit-helper
```## Updating your current version
If you already have one of our `pip` releases installed in your machine and want to update to the latest version, use the command:
```bash
$ pip3 install --upgrade commit-helper
```## Usage and configuration
This program has a cli that you can take advantage of. Running `commit --help`
will show you the usage and options for your commit. All of them are optional
for the sake of not losing your precious time.```bash
$ commit -h
usage: commit [-h] [-t TAG] [-m MESSAGE] [-ct CONTEXT] [-ca CO_AUTHOR] [-nf]
[-c {angular,karma,tagged,symphony,message}] [-d]A commit formatter tool to help you follow commit conventions.
optional arguments:
-h, --help show this help message and exit
-t TAG, --tag TAG Pass your commit tag directly
-m MESSAGE, --message MESSAGE
Pass your commit message directly
-ct CONTEXT, --context CONTEXT
Pass your commit context directly
-ca CO_AUTHOR, --co-author CO_AUTHOR
Make your friend an co-author to the commit
-nf, --no-file Disables the creation of a commiter.yml or commit-helper.yml file
-c {angular,karma,tagged,symphony,message}, --convention {angular,karma,tagged,symphony,message}
Selects a convention to be used for the commit.
Required if there's no commiter.yml or commit-helper.yml file.
-d, --debug Toggles debug option```
So, if you want to write a co-authored commit, you should use:
```bash
$ commit --co-author "foo bar doritous "
```Or if you are using this for the first time in your project:
```bash
$ commit --convention tagged
```To work even more smoothly, have in your working directory a file named **commiter.yml or commit-helper.yml**. In this file you must pass the commit convention that you want to use, following the example:
```yaml
convention: angular # tag(context): commit message# or
convention: karma # tag(context): commit message
# or
convention: tagged # TAG: commit message
# or
convention: symphony # [Tag] commit message
# and if you're feeling adventurous
convention: none # Commit message
```In case that you or your organization does already have a commit convention that is not listed above, you can configure it in the commiter.yml or commit-helper.yml file as following:
```yaml
convention: custom
# considering a commit message like '{add} (stuff) ~> in file foo.br'
commit_pattern: '{tag} (context) ~> message'
# tag, message and context are reserved words that will be replaced in your commit message
context: true # this is a must have field! If your pattern doesn't have one, assign false to it
```Supported conventions available:
- angular
- karma
- tagged
- symphony
- atom
- only message (no convention)
- a custom one that you may create :)## Troubleshooting
If after you've installed commit-helper the `commit` or `commit-helper` commands are not usable at the command line, check if `$HOME/.local/bin` is on your PATH. If not, add it on your .bashrc file by running:
``` bash
$ echo "export PATH=$HOME/.local/bin:$PATH" >> .bashrc
```## Project's maintainers
| **Name** | **Username** |
| :--------: | :-----: |
| André de Sousa Costa Filho | @andre-filho |## Our collaborators
| **Name** | **Username** |
| :------: | :----------: |
| Arthur José Benedito de Oliveira Assis | @arthur0496 |
| Matheus Richard Torres Gomes de Melo | @MatheusRich |