https://github.com/cshekharsharma/git-changelog
A simple PHP library for generating changelog file from git log history
https://github.com/cshekharsharma/git-changelog
changelog git php-library tools
Last synced: 5 months ago
JSON representation
A simple PHP library for generating changelog file from git log history
- Host: GitHub
- URL: https://github.com/cshekharsharma/git-changelog
- Owner: cshekharsharma
- License: mit
- Created: 2018-03-15T21:03:16.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2018-09-06T12:42:55.000Z (almost 8 years ago)
- Last Synced: 2025-09-18T12:18:35.136Z (9 months ago)
- Topics: changelog, git, php-library, tools
- Language: PHP
- Homepage:
- Size: 554 KB
- Stars: 6
- Watchers: 2
- Forks: 2
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG
- License: LICENSE
Awesome Lists containing this project
README
Git Change Log
--------------
A simple PHP library for generating changelog file by parsing git log history.
[](https://packagist.org/packages/cshekharsharma/git-changelog)
[](https://php.net/)
[](https://travis-ci.org/cshekharsharma/git-changelog)
[](https://packagist.org/packages/cshekharsharma/git-changelog)
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
## Commit format
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.
## Installation
Install the latest version with
```bash
$ composer require cshekharsharma/git-changelog
```
## Basic Usage
```php
setStartDate('2018-01-01');
$generator->setEndDate('2018-04-01');
$generator->setWorkingDir('/path/to/git/repository');
$generator->setOutputFormat(Constants::OUTPUT_FORMAT_MARKDOWN);
$changelogs = $generator->generate();
```
## Third Party Packages
No third party packages is used in git-changelog.
## About
### Requirements
- git-changelog works with PHP 5.5 or above.
### Author
Chandra Shekhar Sharma
### License
git-changelog is licensed under the MIT License - see the `LICENSE` file for details