# @comparto/git-c

> Conventional git cli.

Latest version **2.2.0** (published 2021-01-22) · MIT license · 0 weekly downloads

## Install

```sh
npm install @comparto/git-c
pnpm add @comparto/git-c
yarn add @comparto/git-c
bun add @comparto/git-c
```

Provides the command `git-c`.

## Health

**Score 25/100 (F)** — status: abandoned.

Positive: has types; no vulnerabilities; high quality score.

Warnings: low downloads; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 2.2.0 |
| Published | 2021-01-22 |
| First published | 2020-11-27 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | CommonJS |
| Node | >=8.0.0 |
| Dependencies | 8 |
| Unpacked size | 46.2 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 0 |
| Author | @jimmy-guzman |
| Maintainers | epic_tacho |

## Links

- npm: https://www.npmjs.com/package/@comparto/git-c
- Repository: https://github.com/comparto/git-c
- Issues: https://github.com/comparto/git-c/issues
- npm.io page: https://npm.io/package/@comparto/git-c

## Dependencies (8)

- [kleur](https://npm.io/package/kleur.md) ^3.0.3
- [tslib](https://npm.io/package/tslib.md) ^1
- [prompts](https://npm.io/package/prompts.md) ^2.4.0
- [cosmiconfig](https://npm.io/package/cosmiconfig.md) ^7.0.0
- [fuzzy-search](https://npm.io/package/fuzzy-search.md) ^3.2.1
- [@oclif/config](https://npm.io/package/@oclif/config.md) ^1.17.0
- [@oclif/command](https://npm.io/package/@oclif/command.md) ^1.8.0
- [@oclif/plugin-help](https://npm.io/package/@oclif/plugin-help.md) ^3.2.1

## Recent versions

- 2.2.0 (latest) — 2021-01-22
- 2.1.0 — 2021-01-16
- 2.0.0 — 2021-01-16
- 1.0.2 — 2020-12-06
- 1.0.1 — 2020-11-27
- 1.0.0 — 2020-11-27

## README

![actions][actions-badge]
[![version][version-badge]][package] [![downloads][downloads-badge]][npmtrends]
[![Code Coverage][coverage-badge]][coverage]
[![semantic-release][semantic-release-badge]][semantic-release]
[![code style: prettier][prettier-badge]][prettier]

# @comparto/git-c

Interactive conventional commits cli, inspired by [git-cz](https://github.com/streamich/git-cz) with the ability to leverage `commitlint` configuration, configuration validation, versatile configuration through `cosmiconfig` and more

# Usage

```bash
npx @comparto/git-c
```

  <!-- usage -->

```sh-session
$ npm install -g @comparto/git-c
$ git-c COMMAND
running command...
$ git-c (-v|--version|version)
@comparto/git-c/2.2.0 linux-x64 node-v14.15.1
$ git-c --help [COMMAND]
USAGE
  $ git-c COMMAND
...
```

<!-- usagestop -->

# Command Topics

- [`git-c commit`](docs//commit.md) - interactive conventional commit cli
- [`git-c help`](docs//help.md) - display help for git-c

<!-- commandsstop -->

# Configuration

By default `git-c` comes ready to run out of the box.

> This supports cosmiconfig, so you can customize with either a `gitc` key in your package.json, or just create a `.gitcrc.json`, `.gitcrc.yml`, `gitc.config.js`, etc. in your project directory.

## Options

### Breaking Change Emoji

```
feat: 🎸 dope new feature

BREAKING CHANGE: 🧨 breaks stuff
```

```yml
breakingChangeEmoji: '🧨'
```

### Closed Issue Emoji

```
fix: 🐛 resolved nasty bug

🏁 Closes: #123
```

```yml
closedIssueEmoji: '🏁'
```

### Disable Emoji

Disable all emojis, overrides `breakingChangeEmoji`, `closedIssueEmoji` and `emoji` options

```yml
disableEmoji: false
```

### Details

Allows you to further configure cli and git message output based on `type`.
_Default emojis follow standards set by [gitmoji][gitmoji]_

```yml
details:
  chore:
    description: Other changes that don't modify src or test files
    emoji: '🤖'
  ci:
    description: Changes to CI configuration files and scripts
    emoji: '👷'
  docs:
    description: Add or update documentation.
    emoji: '📝'
  feat:
    description: A new feature
    emoji: '🎸'
  fix:
    description: Fix a bug.
    emoji: '🐛'
  perf:
    description: Improve performance.
    emoji: '⚡️'
  refactor:
    description: Refactor code.
    emoji: '♻️'
  release:
    description: Deploy stuff.
    emoji: '🚀'
  revert:
    description: Revert changes.
    emoji: '⏪'
  style:
    description: Improve structure / format of the code.
    emoji: '🎨'
  test:
    description: Add or update tests.
    emoji: '✅'
```

### Max Message Length

```yml
maxMessageLength: 64
```

### Min Message Length

```yml
minMessageLength: 3
```

### Questions

Allows you to toggle questions.

```yml
questions:
  - type # Select the type of change that you're committing?
  - scope # Select the scope this component affects?
  - subject # Write a short, imperative description of the change?
  - body # Provide a longer description of the change?
  - breaking # List any breaking changes
  - issues # Issues this commit closes, e.g #123
```

_`scope` question will not be turned if there's no scopes_

### Scopes

Allows you to provide list of `scopes` to choose from.

```yml
scopes: []
```

_Will not be in effect if `scope` question is not turned on._

### Types

Allows you to provide list of `types` to choose from. Can be further configured through `Details`.

```yml
types:
  - chore
  - docs
  - feat
  - fix
  - refactor
  - test
```

### Commitlint

Will leverage [Commitlint's configuration](https://commitlint.js.org/#/reference-configuration) instead for options:

- `types` correlates to `rules[type-enum][2]`
- `scopes` correlates to `rules[scope-enum][2]`
- `maxMessageLength` correlates to `rules[header-max-length][2]`
- `minMessageLength` correlates to `rules[header-min-length][2]`

```yml
useCommitlintConfig: false
```

[actions-badge]: https://img.shields.io/github/workflow/status/comparto/git-c/Release?label=actions&logo=github-actions&style=flat-square
[version-badge]: https://img.shields.io/npm/v/@comparto/git-c.svg?logo=npm&style=flat-square
[package]: https://www.npmjs.com/package/@comparto/git-c
[downloads-badge]: https://img.shields.io/npm/dm/@comparto/git-c.svg?logo=npm&style=flat-square
[npmtrends]: http://www.npmtrends.com/@comparto/git-c
[semantic-release]: https://github.com/semantic-release/semantic-release
[semantic-release-badge]: https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg?style=flat-square
[coverage-badge]: https://img.shields.io/codecov/c/github/comparto/git-c.svg?style=flat-square
[coverage]: https://codecov.io/github/comparto/git-c
[prettier-badge]: https://img.shields.io/badge/code_style-prettier-ff69b4.svg?style=flat-square
[prettier]: https://github.com/prettier/prettier
[gitmoji]: https://gitmoji.carloscuesta.me/

---
_Source: https://npm.io/package/@comparto/git-c · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
