Gibt es eine Möglichkeit, die Liste aller neuen/gelöschten/geänderten Verzeichnisse/Dateien im lokalen/Remote-Repository w.r.t in GIT zu bekommen?GIT Liste der neuen/modifizierten/gelöschten Dateien
Antwort
Ich bin mir nicht sicher, was Sie in Bezug auf einander meinen, aber wenn Sie eine individuelle Auflistung (z. B. alle geänderten Dateien) möchten, können Sie mit den richtigen Flags verwenden (für geänderte Dateien ist es -m
). Wenn Sie alle diese Informationen auf einmal haben möchten, können Sie git status --porcelain
verwenden, um eine script-analysierbare Ausgabe des Status zu erhalten.
Der Git-Status listet die neuen Verzeichnisse/Dateien, die dem Remote-Repo hinzugefügt wurden, nicht auf. Macht es ? – Jean
@alertjean: Was meinst du mit "neu"? Sind sie nicht verfolgt? Werden sie hinzugefügt, aber nicht begangen? Was sind Sie? –
Danke, das ist genau das, was ich gesucht habe. Jetzt kann ich z.B. 'geany $ (git ls-files -m)' – mwfearnley
Was Sie wahrscheinlich wollen, ist so etwas wie:
git fetch # update what you know about the remote repo
git diff --name-status master origin/master
Aber es ist ziemlich schwierig, genau zu sagen, was Zweige Sie Ihre Frage diff wollen.
Eine Möglichkeit, dies zu tun, ist mit dem whatchanged
Befehl:
$ git whatchanged
Dies zeigt, welche für jeden im Baum begeht geänderte Dateien und kann verwendet werden, um Besonderheiten als auch zu suchen. Werfen Sie einen Blick auf git help whatchanged
Der beste Weg, diese Datei zur Liste wird mit git status --porcelain
Zum Beispiel: Um zuvor gelöschte Dateien zu entfernen:
git status --porcelain | awk 'match($1, "D"){print $2}' | xargs git rm
Das Entfernen der letzten Pipe am Ende ist ein guter Weg, um aufzulisten, welche Dateien gelöscht wurden. Hilfreich, wenn Sie einen sehr langen Git-Status haben und nach einem bestimmten Status filtern möchten. – IanVS
Verwenden Sie den Trockenlauf (-n) Option von git add
:
git add -A -n
yup, das ist die eine, die ich wollte! – Doug
Verwendung mit dem Befehl --name-status
Beispiel mit Tags:
git diff v1.0.1 v1.0.2 --name-status
Beispiel mit Commits:
git diff b79810fc4d be69e41d1c --name-status
es listet alle aktualisierten Dateien mit ihrem Status: M
- modifizierte D
- gelöscht A
- hinzugefügt
An erhalten nur Namen und den Status der momentan geänderten Dateien Datei können Sie einfach:
git diff --name-status
Sie werden die blanken Ausgabe wie folgt erhalten:
M a.txt
M b.txt
Nun Rohr der Ausgang cut
zu extrahieren die zweite Säule:
git diff --name-status | cut -f2
Dann werden Sie nur die Dateinamen haben:
a.txt
b.txt
- 1. Git-Liste der gestaffelten Dateien
- 2. Liste der Dateien analysieren
- 3. Git pre-commit Haken: getting Liste der geänderten Dateien
- 4. Liste alle Dateien mit einem Git-Attributsatz
- 5. git gelöschte Dateien
- 6. Liste Dateien mit git ls-Dateien von der Wurzel statt aktuelles Arbeitsverzeichnis
- 7. Android Liste der Dateien zählen
- 8. Git: Liste nur „untracked“ Dateien (auch benutzerdefinierte Befehle)
- 9. Git eine Liste aller Dateien in einer Branche geändert
- 10. Git: Liste nur die Dateien für alle Taschen geändert
- 11. git: Liste aller geänderten Dateien einschließlich derjenigen in Submodulen
- 12. Git ignoriert einige der Dateien nicht
- 13. git erstellt Dateien mit der Endung ~?
- 14. Git, zeige mir nicht * .pyc in der Liste der nicht gekerbten Dateien!
- 15. Bash: cat mehrere Dateien aus der Liste der Dateien
- 16. Git-Zweig Liste der Zweige mit Upstream
- 17. Liste der Fernbedienungen für ein Git-Repository?
- 18. Bestimmung der Liste der Juwel von Dateien für die Spezifikation
- 19. Separate Dateien in Git
- 20. Ausblenden von Dateien, die git rm --cached von der Liste der geänderten Dateien in GitHub für Windows
- 21. git reset mehrere Dateien
- 22. Git ignorieren gelöschte Dateien
- 23. Wo speichert Git Dateien?
- 24. Git: Ignoriere nachverfolgte Dateien
- 25. Git - und verwerfen Dateien
- 26. Git: Liste all unmerged Änderungen in git
- 27. Behalte ignorierte Dateien aus dem git-Status
- 28. Git-Server-Hook: Holen Sie den Inhalt der gedrückten Dateien?
- 29. Erstellen Sie eine Liste der geänderten Dateien/Verzeichnisse/etc. Ich benutze Git zwischen zwei Tags
- 30. Wie kann ich git eine Liste der Dateien anzeigen lassen, die verfolgt werden?
'git status' scheint das zu tun. – Blender