Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/aichbauer/node-semantic-git-release-cli
A CLI for semantic releases. Writes a changelog and tags the new version.
https://github.com/aichbauer/node-semantic-git-release-cli
changelog cli git nodejs release semantic semantic-releases semver tag version
Last synced: about 2 months ago
JSON representation
A CLI for semantic releases. Writes a changelog and tags the new version.
- Host: GitHub
- URL: https://github.com/aichbauer/node-semantic-git-release-cli
- Owner: aichbauer
- License: mit
- Created: 2017-05-15T20:54:01.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2023-01-04T07:40:55.000Z (about 2 years ago)
- Last Synced: 2024-11-08T09:54:59.808Z (about 2 months ago)
- Topics: changelog, cli, git, nodejs, release, semantic, semantic-releases, semver, tag, version
- Language: JavaScript
- Homepage:
- Size: 5.2 MB
- Stars: 6
- Watchers: 5
- Forks: 2
- Open Issues: 17
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# semantic-git-release-cli
[![Build Status](https://travis-ci.org/aichbauer/node-semantic-git-release-cli.svg?branch=master)](https://travis-ci.org/aichbauer/node-semantic-git-release-cli)
[![Build status](https://ci.appveyor.com/api/projects/status/7kedayu8diw41day?svg=true)](https://ci.appveyor.com/project/rudolfsonjunior/node-semantic-git-release-cli)
[![Coverage Status](https://coveralls.io/repos/github/aichbauer/node-semantic-git-release-cli/badge.svg?branch=master)](https://coveralls.io/github/aichbauer/node-semantic-git-release-cli?branch=master)> A CLI for semantic releases. Writes a changelog and tags the new version.
## Table of contents
- [Why](#why)
- [Installation](#installation)
- [Usage](#usage)
- [Commands](#commands)
- [sgr](#sgr)
- [sgr recover](#sgr-recover)
- [sgr version](#sgr-version)
- [Options](#options)
- [sgr recover --backup](#sgr-recover---backup)
- [sgr --help](#sgr---help)
- [sgr --version](#sgr---version)## Why?
Many projects need versioning. It is always the same: testing, writing the changelog, updating the version, tagging the commit, and finally releasing the new version.
`sgr` will take care of all of them, so you can focus on the more important stuff: **code**
## Installation
```sh
$ npm i -g semantic-git-release-cli
```or
```sh
$ yarn add global semantic-git-release-cli
```## Usage
Forget the times when you had to manually write changelogs, update versions, tag commits. Now just type:
```sh
$ sgr
```or if you already have an alias for sgr, use following instead:
```sh
$ semantic-git-release
```## Commands
`semantic-git-release-cli` was build to be as simple as possible, so there are just a few commands you need to know.
- [sgr](#sgr)
- [sgr recover](#sgr-recover)
- [sgr version](#sgr-version)## Options
`semantic-git-release-cli` was build to be as simple as possible, so there are just a few options you need to know.
- [sgr recover --backup](#sgr-recover---backup)
- [sgr --help](#sgr---help)
- [sgr --version](#sgr---version)### sgr
With `sgr` you can release a new version of your project.
#### Tasks
So there are a few tasks `semantic-git-release-cli` will do for you:
- removes and reinstalls `node_modules` (prefers `yarn` by default)
- runs tests by calling `npm test`
- updates the `version` in `package.json`
- creates or updates the `CHANGELOG.md`
- commits and tags the new `version````sh
# release a new version
$ sgr
```### sgr recover
With `sgr recover [backup]` you can recover your complete CHANGELOG.md if you just started to use `semantic-git-release-cli` but already released (and tagged) versions.
```sh
# generates the complete CHANGELOG.md
$ sgr recover
# generates the complete CHANGELOG.md, and creates a backup of the old one
$ sgr recover --backup
```### sgr version
With `sgr version` you can display the current version of `semantic-git-release-cli`.
```sh
# current version
$ sgr version
```### sgr recover --backup
With `sgr recover --backup` you can recover your complete CHANGELOG.md, and recover the old CHANGELOG.md to `.sgr_backup`.
```sh
# generates the complete CHANGELOG.md and saves the old CHANGELOG.md to `.sgr_backup`
$ sgr recover --backup
```### sgr --help
With `sgr --help` you can display usage of `semantic-git-release-cli`.
```sh
# usage of cli
$ sgr --help
```### sgr --version
With `sgr --version` you can display the current version of `semantic-git-release-cli`.
```sh
# current version
$ sgr --version
```