Files
faveo/vendor/gitonomy/gitlib/doc/log.md
RafficMohammed da241bacb6 updated-packages
2023-01-08 00:13:22 +05:30

1.1 KiB

Getting log history

Crawling manually commits and parents to browse history is surely a good solution. But when it comes to ordering them or aggregate them from multiple branches, we tend to use git log.

To get a Log object from a repository:

$log = $repository->getLog();

You can pass four arguments to getLog method:

// Global log for repository
$log = $repository->getLog();

// Log for master branch
$log = $repository->getLog('master');

// Returns last 10 commits on README file
$log = $repository->getLog('master', 'README', 0, 10);

// Returns last 10 commits on README or UPGRADE files
$log = $repository->getLog('master', ['README', 'UPGRADE'], 0, 10);

Counting

If you want to count overall commits, without offset or limit, use the countCommits method:

echo sprintf('This log contains %s commits%s', $log->countCommits(), PHP_EOL);

// Countable interface
echo sprintf('This log contains %s commits%s', count($log), PHP_EOL);

Offset and limit

Use those methods:

$log->setOffset(32);
$log->setLimit(40);

// or read it:
$log->getOffset();
$log->getLimit();