Track files for changes.
<?php
require_once 'vendor/autoload.php';
$bomFilename = '.bom.json';
$tracker = new \tomzx\FileTracker\Tracker($bomFilename);
$files = 'README.md';
if ($tracker->hasChanged($files)) {
echo 'README changed!' . PHP_EOL;
}
// Update the hash of the given files
$tracker->track($files);
$files = ['composer.json', 'composer.lock'];
if ($tracker->hasChanged($files)) {
echo 'Run composer!' . PHP_EOL;
}
// Update the hash of the given files
$tracker->track($files);
// Store the latest hash in .bom.json
$tracker->save();
$files = ['.gitignore'];
$changes = $tracker->changedFiles($files);
if ($changes) {
echo 'Gitignore was changed' . PHP_EOL;
}
// Only update the hash of .gitignore if it changed
$tracker->track(array_keys($changes));
The code is licensed under the MIT license. See LICENSE.