tikiwiki/packages/tiki-pkg-tikimanager/gitonomy/gitlib/doc/log.md
2023-11-20 20:52:04 +00:00

1.1 KiB
Executable File

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();