Ist es möglich git status
und nur geänderte Dateien anzuzeigen?
Das Problem ist, dass ich zu viele bereitgestellte Dateien habe, die ich momentan nicht festschreiben oder gitignore möchte, und ich kann nicht nach oben scrollen. Ich habe ein Scrollback-Limit für Ubuntu festgelegt.
git status
wird der Pager aufgerufen.--short
oder--porcelain
, um einzeilige Versionen des Status abzurufen.git ls-files -m
: Welche Modifikation (en) interessieren Sie, inszeniert, nicht inszeniert oder beides?Antworten:
Sie können dies nicht tun
git status
, aber Sie könnengit ls-files -m
alle geänderten Dateien anzeigen.quelle
git status | grep modified
wie dies in der Antwort von user23186 angegeben ist.git ls-files -m
zeigt nichts, abergit status | grep modified
es funktioniert.git diff --name-only --diff-filter=M HEAD
Es werden nur geänderte Dateien sowohl für bereitgestellte als auch für nicht bereitgestellte Dateien angezeigt. Sie sollten jedoch in den Dokumenten nachsehen,--diff-filter
welche anderen Filtertypen Sie möglicherweise hinzufügen möchten.Es sieht so
git status -uno
aus, als würden nur Dateien angezeigt, die von git verfolgt werden, ohne dass etwas anderes im Verzeichnis angezeigt wird. Nicht genau das, wonach Sie gefragt haben, aber vielleicht das Gleiche erreichen (eine Liste mit lesbaren Längen von Dateien erhalten, die Git-Tracks enthalten).quelle
git status -u no
zeigt weder (1) geänderte Dateien an, die geändert wurden, noch (2) verfolgte Dateien, die bereitgestellt wurden. Ich habe dies mit den Git-Versionen 1.8.5.2 und 1.9.4 überprüft.git status -uno
( stackoverflow.com/questions/7008546/… )quelle
awk '$1 == "M" { print $2 }'
Für geänderte Dateien:
quelle
git config --global alias.modified '!git status | grep modified:'
git diff --name-only --diff-filter=M
quelle
git diff --cached --name-only --diff-filter=ACMR
die hinzugefügte, kopierte, geänderte und umbenannte Dateien ausführen.git diff --name-only
funktioniert auch.quelle
Ich habe nach den gleichen Informationen gesucht und festgestellt, dass die folgenden Dateien geändert wurden:
quelle
git status -uno --porcelain
fügt schöne Ausgabe für das Parsing-Skript hinzuSie können verwenden
um nur geänderte Dateien aufzulisten.
quelle
Dies beantwortet möglicherweise nicht direkt die Frage, nur geänderte Dateien aufzulisten, kann jedoch dazu beitragen, die Anzahl der aufgelisteten Dateien zu begrenzen.
Sie können einen Pfad übergeben,
git status
um die Ausgabe auf einen bestimmten Ordner im Repo zu beschränken.Beispielsweise:
quelle
Um die geänderten Dateien aufzulisten, verwenden Sie:
Wenn Sie nur den Basisnamen (keinen Pfad) möchten, können Sie jedes Ergebnis zeilenweise mit xargs an den Befehl basename weiterleiten:
quelle
Ich benutze diesen Befehl:
Und die Ausgabe sieht so aus:
quelle
Ich benutze
git cola
. Es ist ein einfacher und eleganter UI-Client, der Ihnen die geänderten Dateien anzeigt und Ihnen eine diff-ähnliche Aufnahme der von Ihnen vorgenommenen Änderungen bietet.git cola
bietet Ihnen eine grafische Benutzeroberfläche, über die Sie visualisieren können, welche Dateien Sie geändert haben, welche Sie bereitgestellt haben und welche nicht. Ihre Frage war, nur den Git-Status zu verwenden, glaube ich, aber ich dachte, Git-Cola kann helfen, wenn das und andere Dinge auch. Weitere Informationen finden Sie auf dieser Webseite: git-cola.github.com/screenshots.htmlquelle
Wenn Sie die geänderten Dateien auflisten möchten, können Sie dies tun:
git log -n1 --oneline --name-status | grep '^M'
quelle
Um alle geänderten Dateien aufzulisten, verwenden Sie:
quelle
Alle guten Antworten; Nur FEI, "git checkout" (Wechseln zu oder in demselben Zweig) scheint nur geänderte Dateien anzuzeigen.
quelle
Betriebssystem: Windows
Der folgende Befehl zeigt alle Zeilen an, die "geändert:" , "umbenannt:" oder "neue Datei:" enthalten.
Wenn Sie den Dateityp angeben möchten: (zum Beispiel
*.py
*.ini
)Wenn Sie denken, dass es zu viel Mühe gibt, so viel zu tippen:
eine Batchdatei erstellen (zB
st.bat
)Schreiben Sie den Inhalt wie folgt:
Fügen Sie den Umgebungspfad hinzu, der Ihre Batchdatei enthält. (
st.bat
)Verwendung
(Hinweis: Wenn Typ> 1 ist, muss das Semikolon hinzugefügt werden.)
Betriebssystem: LINUX
wie @Lance sagt, können Sie versuchen
git status | grep modified:
quelle