Skip to content
/ cmz Public

A helpful commit cli πŸ˜‚πŸ˜‚πŸ˜‚πŸ˜‚πŸ˜‚πŸ˜‚πŸ˜‚πŸ˜‚

License

Notifications You must be signed in to change notification settings

Shad02w/cmz

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

CMZ

A helpful commit cli πŸ˜‚πŸ˜‚πŸ˜‚πŸ˜‚πŸ˜‚πŸ˜‚πŸ˜‚

Installation

Global

yarn add global @shad02w/cmz
# or
npm i -g @shad02w/cmz
# then commit using
cmz

Local

yarn add -D @shad02w/cmz
# then commit using
yarn cmz

Configurations

Add cmz.config.js to the root of workspace and repo, add setup as following:

const { defineConfig } = require('@shad02w/cmz')

module.exports = defineConfig({
    commitTypes: [
        {
            name: 'Refactor',
            description: 'A code change that neither fixes a bug nor adds a feature',
        },
        {
            name: 'Fix',
            description: 'A bug fix',
        },
        {
            name: 'Upgrade',
            description: 'Dependencies update and change',
        },
        {
            name: 'Publish',
            description: 'Release a new version to npm',
        },
    ],
    scopes: [
        {
            name: 'app',
            description: 'App for native platform',
        },
        {
            name: 'web',
            description: 'Web application',
        },
        {
            name: 'shared',
            description: 'Shared code between web and app',
        },
    ],
    // Final commit message reolve to
    resolve: ({ commitType, message }) => `(${commitType.name}) ${message}`,
})

You can also define configuration file in Typescirpt , to do that , create a cmz.config.ts file and set it up similar to above

import { defineConfig } from '@shad02w/cmz'

export default defineConfig({
    // Your config here
})

and also install ts-node, without ts-node the config file will not able to transpile.

If you do not want to put config file on root of the workspace or want a alternative config file name, you can use

cmz -c "your config file path here"

to specify a config file.

Options

# cmz -h
A simple git commit tool

USAGE
  $ cmz

OPTIONS
  -c, --config=config  custom config file path
  -h, --help           show CLI help
  -v, --version        show CLI version

Contributors

About

A helpful commit cli πŸ˜‚πŸ˜‚πŸ˜‚πŸ˜‚πŸ˜‚πŸ˜‚πŸ˜‚πŸ˜‚

Resources

License

Stars

Watchers

Forks

Packages

No packages published