A simple PHP library for generating changelog file by parsing git log history.
git-changelog parses the git history at provided working directory
within the duration of start date
and end date
, and generates change logs.
Changelogs can be generated in following output formats, by setting output format
property while generating logs.
- Markdown (Standard MD format)
- Remarkup (See Phabricator remarkup guide)
- HTML
- JSON
git-changelog expects commits to be in following format-
type : commit-message
Type can be one of the following values-
- fix
- feature
- general
- security
if commit message does not follow this format, or the provided type
is other than the provided 4 types, then the commit message is categories under general
type.
Install the latest version with
$ composer require cshekharsharma/git-changelog
<?php
use GitChangeLog\Constants;
require_once '../vendor/autoload.php';
$generator = new \GitChangeLog\ChangeLogGenerator();
$generator->setStartDate('2018-01-01');
$generator->setEndDate('2018-04-01');
$generator->setWorkingDir('/path/to/git/repository');
$generator->setOutputFormat(Constants::OUTPUT_FORMAT_MARKDOWN);
$changelogs = $generator->generate();
No third party packages is used in git-changelog.
- git-changelog works with PHP 5.5 or above.
Chandra Shekhar Sharma [email protected]
git-changelog is licensed under the MIT License - see the LICENSE
file for details