A Changelog Management Tool written in Go which is compatible with Linux, Windows and Mac OS-X.

changelog-go

changelog Go Report Card Maintainability

A Changelog Management Tool written in Go which is compatible with Linux, Windows and Mac OS-X.

Demo

asciicast

Motivation

Think about that: You have a Project where you work with other 4-5 Peoples. How do you track changes so that they can easily added to a Changelog File?

This Tool helps you to keep track of you Changelog (and changes) and its fully compatible with (eg.) the Git Flow. This Tool does not aim to replace Tools like Jira moreover, it extends it. Create Changelog Files easily with one Command (changelog release ).

Feature branches can contain Changelog Entries and can be merged whenever you want! It does not break the functionality.

And this Tool does not disturb any other Tool (eg IDE, CI/CD, Artifact, ...)

Features

  • seamless integration into your Workflow and CI/CD environment
  • works with Git, SVN, ... (every version control system)
  • highly customizable
    • CHANGELOG.md output can be easily changed without writting any code
    • for internal and OpenSource Projects
  • MIT license
  • wide range of supported (and pre-compiled) Operating Systems
  • keep track of changes made in your Project
  • generates a changelog exactly the way you want it
  • free and fast support

Installation

There are many possibilities to install this Application.

snap

Get it from the Snap Store

~] snap install changelog

script

You can also install changelog-go via a shell script:

~] curl https://gitlab.com/l0nax/changelog-go/raw/master/install.sh | bash

RPM/ Deb

### (1) download the file from https://gitlab.com/l0nax/changelog-go/-/releases

### (2) install it via
~] rpm -iv PATH/TO/FILE
# or
~] dep -iv PATH/TO/FILE

binary

  1. Download the binary file from the Release Page
  2. Add the Path to the binary to your $PATH environment variable

Usage

NOTE: You don't have to be at the root path (eg. where your .git relies) to generate/ create a Changelog(-Entry)

Initialize directory

  1. Run changelog init and edit the config file (.changelog-go.yaml)

Create a new change entry

  1. Run changelog new ""</code> and then choose from the list which category is the best fit.</li>
  2. Add and commit the new Changelog File

Example:

> 1 ## (2) add and commit changelog Entry ~] git add .changelogs/unreleased/bugfix_P71128-114_bug-in-go-to-parser-gnAfCUyu ~] git commit -m "Add changelog entry" ## (3) push/ merge your changes or create (ie.) a Pull-Request">
## (1) create changelog entry
~] changelog new "Fix 'go pos'-Parser Bug"
Using config file: /root/.go/src/gitlab.com/l0nax/test/.changelog-go.yaml
[0] New Feature          (Added)
[1] Bug Fix              (Fixed)
[2] Feature change       (Changed)
[3] New deprecation      (Deprecated)
[4] Feature removal      (Removed)
[5] Security fix         (Security)
[6] Other                (Other)
>> 1

## (2) add and commit changelog Entry
~] git add .changelogs/unreleased/bugfix_P71128-114_bug-in-go-to-parser-gnAfCUyu
~] git commit -m "Add changelog entry"

## (3) push/ merge your changes or create (ie.) a Pull-Request

Release a new version

Releasing a new Version is as simple as creating a new changelog entry:

  1. Run changelog release
  2. Add and Commit the new CHANGELOG.md and changed files under .changelogs

Example:

## (1) generate new changelog
~] changelog release 2.0.0

## (2) commit CHANGELOG.md and `.changelogs`
~] git add .changelogs CHANGELOG.md
~] git commit -m "Generating new CHANGELOG.md"

## (3) push/ merge your changes or create (ie.) a Pull-Request
Owner
Emanuel Bennici
C/C++ Developer and Security Specialist/ Researcher | Matrix: @l0nax:l0nax.org
Emanuel Bennici
Similar Resources

Golog is a logger which support tracing and other custom behaviors out of the box. Blazing fast and simple to use.

GOLOG Golog is an opinionated Go logger with simple APIs and configurable behavior. Why another logger? Golog is designed to address mainly two issues

Oct 2, 2022

An Open Source video surveillance management system for people making this world a safer place.

An Open Source video surveillance management system for people making this world a safer place.

Kerberos Open Source Docker Hub | Documentation | Website Kerberos Open source (v3) is a cutting edge video surveillance management system made availa

Dec 30, 2022

Go-logging-logrus - Learn how to log management in golang with logrus

Learn how to logging in golang with logrus How to run this project git clone htt

Jan 19, 2022

A simple daemon which will watch files on your filesystem, mirror them to MFS, automatically update related pins, and update related IPNS keys.

A simple daemon which will watch files on your filesystem, mirror them to MFS, automatically update related pins, and update related IPNS keys.

ipfs-sync is a simple daemon which will watch files on your filesystem, mirror them to MFS, automatically update related pins, and update related IPNS keys, so you can always access your directories from the same address. You can use it to sync your documents, photos, videos, or even a website!

Dec 30, 2022

Parametrized JSON logging library in Golang which lets you obfuscate sensitive data and marshal any kind of content.

Parametrized JSON logging library in Golang which lets you obfuscate sensitive data and marshal any kind of content.

Noodlog Summary Noodlog is a Golang JSON parametrized and highly configurable logging library. It allows you to: print go structs as JSON messages; pr

Oct 27, 2022

A system and resource monitoring tool written in Golang!

A system and resource monitoring tool written in Golang!

Grofer A clean and modern system and resource monitor written purely in golang using termui and gopsutil! Currently compatible with Linux only. Curren

Jan 8, 2023

Request-logging-tool - A tool logs the md5 codes of the responses of the given domains in parameter

request-logging-tool Application to send http requests and log the md5 responses

Jan 7, 2022

Cloudinsight Agent is a system tool that monitors system processes and services, and sends information back to your Cloudinsight account.

Cloudinsight Agent 中文版 README Cloudinsight Agent is written in Go for collecting metrics from the system it's running on, or from other services, and

Nov 3, 2022

The Simplest and worst logging library ever written

gologger A Simple Easy to use go logger library. Displays Colored log into console in any unix or windows platform. You can even store your logs in fi

Sep 26, 2022
Make HMCL working in Apple Silicon Mac without x86 Java

M1MC Apple have used arm64 architecture on their new Macs. But Minecraft have no

Sep 19, 2022
An open source Pusher server implementation compatible with Pusher client libraries written in GO

Try browsing the code on Sourcegraph! IPÊ An open source Pusher server implementation compatible with Pusher client libraries written in Go. Why I wro

Jan 3, 2023
Gowl is a process management and process monitoring tool at once. An infinite worker pool gives you the ability to control the pool and processes and monitor their status.
Gowl is a process management and process monitoring tool at once. An infinite worker pool gives you the ability to control the pool and processes and monitor their status.

Gowl is a process management and process monitoring tool at once. An infinite worker pool gives you the ability to control the pool and processes and monitor their status.

Nov 10, 2022
A GNU/Linux monitoring and profiling tool focused on single processes.
A GNU/Linux monitoring and profiling tool focused on single processes.

Uroboros is a GNU/Linux monitoring tool focused on single processes. While utilities like top, ps and htop provide great overall details, they often l

Dec 26, 2022
Simple Golang tool for monitoring linux cpu, ram and disk usage.

Simple Golang tool for monitoring linux cpu, ram and disk usage.

Mar 19, 2022
A Log merging tool for linux.

logmerge A Log merging tool for linux. How to build make build How to run --files or -f will allow you to specify multiple log files (comma-seperated)

Nov 4, 2021
Package zaperations provides a Google Cloud operations suite (formerly Stackdriver) compatible config for the uber-go/zap logger.

Package zaperations provides a Google Cloud Operations (formerly Stackdriver) compatible config for the excellent uber-go/zap logger. Example This exa

Nov 6, 2021
System resource usage profiler tool which regularly takes snapshots of the memory and CPU load of one or more running processes so as to dynamically build up a profile of their usage of system resources.
System resource usage profiler tool which regularly takes snapshots of the memory and CPU load of one or more running processes so as to dynamically build up a profile of their usage of system resources.

Vegeta is a system resource usage tracking tool built to regularly take snapshots of the memory and CPU load of one or more running processes, so as to dynamically build up a profile of their usage of system resources.

Jan 16, 2022
Distributed simple and robust release management and monitoring system.
Distributed simple and robust release management and monitoring system.

Agente Distributed simple and robust release management and monitoring system. **This project on going work. Road map Core system First worker agent M

Nov 17, 2022
EdgeLog is a lightweight log management system, and Agent is a part of EdgeLog system

EdgeLog is a lightweight log management system, and Agent is a part of EdgeLog system. It is installed on host machine and its main duty is to collect host program log statics.

Oct 10, 2022