tikiwiki/packages/tiki-pkg-tikimanager/gitonomy/gitlib/doc/log.md

56 lines
1.1 KiB
Markdown
Raw Normal View History

2023-11-20 21:52:04 +01:00
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:
```php
$log = $repository->getLog();
```
You can pass four arguments to *getLog* method:
```php
// 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:
```php
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:
```php
$log->setOffset(32);
$log->setLimit(40);
// or read it:
$log->getOffset();
$log->getLimit();
```