Code Monkey home page Code Monkey logo

auto-changelog's Introduction

Auto Changelog

A quick script that will generate a changelog for any git repository using conventional style commit messages.

Installation

Pip

auto-changelog is up on PyPI, so you can install it with:

pip install auto-changelog

From Source

Otherwise, you can install from source by cloning the repository from Github:

git clone https://github.com/Michael-F-Bryan/auto-changelog.git

And install the package:

python3 setup.py install

Usage

Calling The Program

The package is callable using the python -m shortcut:

python3 -m auto_changelog

Or alternatively, you can use the provided command:

auto-changelog

Formatting Your Commit Messages

Of course, none of this is going to work if your commit messages are all over the place. The program currently only understands commit messages written following the Angular commit message conventions. This means that your commit messages should look something like this:

<type>(<scope>): <subject>
<BLANK LINE>
<body>
<BLANK LINE>
<footer>

The type and subject fields are mandatory, everything else is optional.

These are some of the valid types that Angular use:

feat

A new feature

fix

A bug fix

docs

Documentation only changes

style

Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)

refactor

A code change that neither fixes a bug nor adds a feature

perf

A code change that improves performance

test

Adding missing tests

chore

Changes to the build process or auxiliary tools and libraries such as documentation generation

Note

The types field should be lower case, although the parser itself is case insensitive.

For more detailed information, please check out Angular's contributing guide.

Examples

Below are a couple screenshots showing the result of the auto-changelog command.

Result of "git log --oneline --graph --decorate"

Generated change log

auto-changelog's People

Contributors

makearl avatar metworkbot avatar michael-f-bryan avatar thebaptiste avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.