PHP Git Modified Files Tool

Easily retrieve modified files since initial commit, last commit, last tag, or last release using this web-based tool. Simply provide the path to your Git repository and get a list of modified files.

function getModifiedFilesSinceInitialCommit($path)
{
    $output = runCommand('git log --pretty=format:"%H" --reverse | head -n 1', $path);
    $initialCommit = trim($output);
    $output = runCommand('git diff --name-only ' . $initialCommit . ' HEAD', $path);
    $files = explode("\n", $output);
    return $files;
}

function getModifiedFilesSinceLastCommit($path)
{
    $output = runCommand('git diff --name-only HEAD~1 HEAD', $path);
    $files = explode("\n", $output);
    return $files;
}

function getModifiedFilesSinceLastTag($path)
{
    $output = runCommand('git describe --tags --abbrev=0', $path);
    $lastTag = trim($output);
    $output = runCommand('git diff --name-only ' . $lastTag . ' HEAD', $path);
    $files = explode("\n", $output);
    return $files;
}

function getModifiedFilesSinceLastRelease($path)
{
    $output = runCommand('git describe --tags --abbrev=0', $path);
    $lastRelease = trim($output);
    $output = runCommand('git diff --name-only ' . $lastRelease . ' HEAD', $path);
    $files = explode("\n", $output);
    return $files;
}