release2hub
Goal
The origin project is hosted on transferwise/release-to-github-with-changelog, this project is an enhancement of the original, adding some features, such as the support of Windows.
Keep the released npm package in sync with the GitHub repo master branch:
- the last
CHANGELOG.md
item is in sync with the last release on Github, with corresponding version tag - the
package.json
version is in sync with themaster
branch version tag
Usage
The usage of CLI
release2hub
The sources of truth are CHANGELOG.md
and package.json
.
Your interface is your CHANGELOG.md
.
Usage: release2hub [options]
Options:
--branch [branchName] Default is master.
--remote [isUseRemoteUrl] Default is false, if set true, the change log will send to git origin remote url, otherwise, it will use the field of repository.url
form package.json.
release-check4hub
You can include a check of your CHANGELOG.md
format in your test command by using the provided release-check4hub
command.
The usage of CHANGELOG.md
Every CHANGELOG.md
item should represent a release note of the version it describes:
# v0.2.0 //version tag
## The release title
// The release description in markdown
# v0.1.9
...
Example
Example of package.json
Don't forget the
repository.url
. It will be parsed to extract the repository full name (myOrg/myRepo
in this example).
Example of CHANGELOG.md
# v0.2.0
## We can fly
Great news! The machine can now also fly!
# v0.1.0
## We can move
### What the machine does
It can move, a bit slowly but still it moves.
//...