Get-GitChangedFiles

EulandaXtools — Funktionsreferenz

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'