violinist-dev/git-log-format

Format changelog-like git logs

Maintainers

Package info

github.com/violinist-dev/git-log-format

pkg:composer/violinist-dev/git-log-format

Statistics

Installs: 226 072

Dependents: 2

Suggesters: 0

Stars: 1

Open Issues: 0

1.1.3 2024-09-11 15:40 UTC

This package is auto-updated.

Last update: 2026-03-11 18:50:50 UTC


README

Packagist Packagist Coverage Status Violinist enabled

A convenience package to get formatted versions of the output of git log --oneline.

This is part of what powers the changelogs in the messages from Violinist.io.

Installation

composer require violinist-dev/git-log-format

Usage

Somehow get a string output from a git log. A command line way to do so is the following:

git log abababa..fefefef --oneline

In the above example, abababa and fefefef are both hashes in the commit history.

The output would be somewhat like this:

fefefef Fix bugs and add tests
cdcdcdc Release features and probably introduce bugs

Then, pass the output to this package:

$data = \Violinist\GitLogFormat\ChangeLogData::createFromString('fefefef Fix bugs and add tests
cdcdcdc Release features and probably introduce bugs');
// Now add some info about what the source of the log is. Like so:
$data->setGitSource('https://github.com/myname/mypackage');
// Then get convenient output back, with links to the actual commits:
print $data->getAsMarkdown();
// Prints:
// - [fefefef](https://github.com/myname/mypackage/commit/fefefef) `Fix bugs and add tests`
// - [cdcdcdc](https://github.com/myname/mypackage/commit/cdcdcdc) `Release features and probably introduce bugs`