PHPackages                             boscho87/changelog-checker - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. boscho87/changelog-checker

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

boscho87/changelog-checker
==========================

Tool to validate the CHANGELOG.md format with the "keep a changelog" instructions

1.3.0(4y ago)41.9kMITPHP

Since Jun 27Pushed 4y ago1 watchersCompare

[ Source](https://github.com/boscho87/changelog-checker)[ Packagist](https://packagist.org/packages/boscho87/changelog-checker)[ RSS](/packages/boscho87-changelog-checker/feed)WikiDiscussions master Synced yesterday

READMEChangelogDependencies (2)Versions (10)Used By (0)

Changelog Checker © Boscho87
============================

[](#changelog-checker--boscho87)

##### Master:

[](#master)

[![pipeline status](https://camo.githubusercontent.com/cb78c3c340373b0fb8cb4b9073e5a065f62cd085ecf3779da4b513b6a82e2251/68747470733a2f2f6769746c61622e636f6d2f697473636f64696e672f6368616e67656c6f672d636865636b65722f6261646765732f6d61737465722f706970656c696e652e737667)](https://gitlab.com/itscoding/changelog-checker/commits/master)
[![coverage report](https://camo.githubusercontent.com/61ce30e0b8b397b9e46ab620ca710838dd0201312a74f9c85239ad24f06c8fab/68747470733a2f2f6769746c61622e636f6d2f697473636f64696e672f6368616e67656c6f672d636865636b65722f6261646765732f6d61737465722f636f7665726167652e737667)](https://gitlab.com/itscoding/changelog-checker/commits/master)

Check if the Changelog has proper format, and if it was updated since the last commit. Some problems can be fixed by the tool if you want (see more in configs)

On Every command it will create a Changelog Backup for you. It will rotate 4 Backlog files.

Follows the Guidelines from [Keep A Changelog](https://keepachangelog.com/)

This tool should only be used in development environments.

#### Requirements

[](#requirements)

- &gt; php7.4
- some checks and actions requires git

### Installation

[](#installation)

Best practice: Install in a subdirectory to avoid dependency Problems

```
mkdir --parents tools/changelog-checker
## install in working dir
composer require --working-dir=tools/changelog-checker boscho87/changelog-checker
## ignore backup files
echo  .clc.* >> .gitignore
echo  tools/changelog-checker/vendor >> .gitignore
```

### Execute the Commands

[](#execute-the-commands)

```
### With default config (or own config file) if your Changelog name is CHANGELOG.md
/tools/changelog-checker/vendor/bin/changelog-checker clc:validate # uses the Changelog and config file from the dir, the command is executed
### Define the Changelog File
/tools/changelog-checker/vendor/bin/changelog-checker clc:validate -f CHANGELOG.md
### Define the config File
/tools/changelog-checker/vendor/bin/changelog-checker clc:validate -c _clc.php
### Force (overwrite the configs) to not only Check, but to resolve the Problems
/tools/changelog-checker/vendor/bin/changelog-checker clc:validate --with-fix=1
### Force (overwrite the configs) to not Fix the Problems
/tools/changelog-checker/vendor/bin/changelog-checker clc:validate --with-fix=0
### Create a new Release (from the Unreleased Section) - ALPHA FEATURE
/tools/changelog-checker/vendor/bin/changelog-checker release # uses the Changelog and composer.json from the dir, the command is executed
### Set a specific  Changelog.md file
/tools/changelog-checker/vendor/bin/changelog-checker release -f CHANGELOG.md
### Set a specific composer.json file
/tools/changelog-checker/vendor/bin/changelog-checker release -c composer.json
### Commit the Updated Changelog and create a git tag (requires git)
/tools/changelog-checker/vendor/bin/changelog-checker release commit
```

### Config

[](#config)

Create a file named `{project-root}/_clc.php` to Overwrite the default configs

> Be Aware that some options depends on some kind of Correctness of the Changelog E.g. if there is no \[Unreleased\] tag, the Increased Checker can not add commit messages underneath it. but the AscendingVersionChecker can resolve this and add an Unreleased Tag, so you should turn fix to true.

```
