Website · Installation · Configuration
The conventional commits toolbox
Cocogitto is a CLI and GitOps toolbox for the conventional commit and semver specifications.
There are plenty of tools listed on the conventional commits web site to help you generate changelog, git hooks, commit template etc. Some of them are specifically designed for the conventional commits specification, and some of them are general purpose.
Cocogitto was designed to help you respect the conventional and semver standard and is not intended to be use in any other context.
It strives to be a set of simples, moderns and fast command line interfaces.
git
replacement. It uses some of libgit2 but only to provide features related to the
conventional commits specification. Anything else shall be done with git
.This readme is a quick tour of what you can do with Cocogitto, for an in-depth guide please refer to the documentation.
shell
yay -S cocogitto-bin
shell
cargo install cocogitto
To create conventional commits you can use the coco
binary. It has subcommands for the default fix
andfeat
conventional commits type plus
the angular commit
conventional commits types.
Example:
```shell
coco feat "add awesome feature"
git commit -m "feat: add awesome feature" ```
See Coco guide -> Conventional commits.
Creating a version with cog bump will perform the following actions :
Example:
```shell
prebumphooks = [ "echo {{version}}", ]
postbumphooks = [ "git push", "git push origin {{version}}", ]
[changelog] path = "CHANGELOG.md" template = "remote" remote = "github.com" repository = "cocogittobotplayground" owner = "cocogitto" authors = [ { username = "oknozor", signature = "Paul Delafosse"} ] ```
cog changelog
use tera templates to generate markdown changelogs. It has several built-in
templates, and you can define your own.
Example:
shell
cog changelog
Output :
```markdown
Github action:
You can run cog check and perform auto releases via GitHub action using cocogitto-action.
Example:
yaml
- name: Semver release
uses: oknozor/cocogitto-action@main
with:
release: true
git-user: 'Cog Bot'
git-user-email: 'mycoolproject@org.org'
See Github integration -> GitHub action
Github bot:
cocogitto-bot is a standalone, zero config bot checking your pull request against the conventional commits specification.
See Github integration -> GitHub-bot
Found a bug, have a suggestion for a new feature ? Please read the contribution guideline and submit an issue.
All the code in this repository is released under the MIT License, for more information take a look at the LICENSE file.