@conventional-changelog/git-client
Simple git client for conventional changelog packages.
Last updated 6 months ago by oss-bot .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ npm install @conventional-changelog/git-client 
SYNC missed versions from official npm registry.

@conventional-changelog/git-client

ESM-only package NPM version Node version Dependencies status Install size Build status Coverage status

Simple git client for conventional changelog packages.


Install   •   Usage   •   API

Install

# pnpm
pnpm add @conventional-changelog/git-client conventional-commits-filter conventional-commits-parser
# yarn
yarn add @conventional-changelog/git-client conventional-commits-filter conventional-commits-parser
# npm
npm i @conventional-changelog/git-client conventional-commits-filter conventional-commits-parser

Note: conventional-commits-filter and conventional-commits-parser are required only if you need ConventionalGitClient#getCommits method.

Usage

import {
  GitClient,
  ConventionalGitClient
} from '@conventional-changelog/git-client'

// Basic git client
const client = new GitClient(process.cwd())

await client.add('package.json')
await client.commit({ message: 'chore: release v1.0.0' })
await client.tag({ name: 'v1.0.0' })
await client.push('master')

// Conventional git client, which extends basic git client
const conventionalClient = new ConventionalGitClient(process.cwd())

console.log(await conventionalClient.getVersionFromTags()) // v1.0.0

API

new GitClient(cwd: string)

Create a wrapper around git CLI instance.

getRawCommits(params?: GitLogParams, restRawArgs?: string[]): AsyncIterable<string>

Get raw commits stream.

getTags(restRawArgs?: string[]): AsyncIterable<string>

Get tags stream.

checkIgnore(file: string, restRawArgs?: string[]): Promise<boolean>

Check file is ignored via .gitignore.

add(files: string | string[], restRawArgs?: string[]): Promise<void>

Add files to git index.

commit(params: GitCommitParams, restRawArgs?: string[]): Promise<void>

Commit changes.

tag(params: GitTagParams, restRawArgs?: string[]): Promise<void>

Create a tag for the current commit.

getCurrentBranch(restRawArgs?: string[]): Promise<string>

Get current branch name.

push(branch: string, restRawArgs?: string[]): Promise<void>

Push changes to remote.

new ConventionalGitClient(cwd: string)

Wrapper around Git CLI with conventional commits support.

getCommits(params?: ConventionalGitLogParams, parserOptions?: ParserStreamOptions, restRawArgs?: string[]): AsyncIterable<Commit>

Get parsed commits stream.

getSemverTags(params?: GitTagsLogParams, restRawArgs?: string[]): AsyncIterable<string>

Get semver tags stream.

getVersionFromTags(prefix?: string, restRawArgs?: string[]): Promise<string | null>

Get current sematic version from git tags.

License

MIT © Dan Onoshko

Current Tags

  • 1.0.1                                ...           latest (6 months ago)

2 Versions

  • 1.0.1                                ...           6 months ago
  • 1.0.0                                ...           7 months ago
Maintainers (2)
Downloads
Total 2
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 0
Last Month 0
Dependencies (2)
Dev Dependencies (0)
None

© 2010 - cnpmjs.org x YWFE | Home | YWFE