Get-GitChangedFiles #
ÜBERSICHT #
Gibt geänderte Dateien seit einem bestimmten Git-Commit zurück.
SYNTAX #
Get-GitChangedFiles [-Path] <string> [[-Extension] <string>] [[-SubPath] <string>] [[-SinceCommit]
<string>] [<CommonParameters>]
BESCHREIBUNG #
Diese Funktion ermittelt per git diff --name-only die geänderten Dateien zwischen einem Referenz-Commit und HEAD. Standardmäßig wird ORIG_HEAD als Referenz verwendet, was dem Stand vor dem letzten git pull entspricht.
Die Ergebnisse können nach Dateierweiterung (-Extension) und Teilpfad (-SubPath) gefiltert werden. Git-eskapierte Pfade mit Umlauten werden automatisch über Convert-GitEscapedPath dekodiert. Nur tatsächlich vorhandene Dateien werden zurückgegeben (gelöschte Dateien werden übersprungen).
PARAMETER #
-Path #
Type: string
Basisverzeichnis des Git-Repositories.
-Extension #
Type: string
Dateierweiterungs-Muster für die Git-Pathspec (z. B. *.md, *.ps1). Wenn nicht angegeben, werden alle Dateien berücksichtigt.
-SubPath #
Type: string
Optionaler Teilpfad, der im relativen Dateipfad enthalten sein muss (z. B. content/). Wenn nicht angegeben, wird nicht gefiltert.
-SinceCommit #
Type: string
Commit-Hash, ab dem verglichen wird. Wenn nicht angegeben, wird ORIG_HEAD verwendet (entspricht dem Stand vor dem letzten git pull).
AUSGABEN #
[string[]] -- Liste vollständiger Pfade zu geänderten Dateien, die auf der Festplatte existieren.
BEISPIELE #
# Alle geänderten .md-Dateien seit dem letzten Pull
Get-GitChangedFiles -Path 'C:\repo' -Extension '*.md'
# Geänderte .yml-Dateien seit einem bestimmten Commit, nur im config-Verzeichnis
Get-GitChangedFiles -Path 'C:\repo' -SinceCommit 'abc1234' -Extension '*.yml' -SubPath 'config/'
# Alle geänderten Dateien seit dem letzten Pull
Get-GitChangedFiles -Path 'C:\repo'