367 Stimmen

Wie führe ich einen "Git-Status" durch, so dass er keine nicht verfolgten Dateien anzeigt, ohne .gitignore zu verwenden?

Wie mache ich eine git status damit es keine nicht verfolgten Dateien anzeigt, ohne .gitignore ? Ich möchte Informationen zum Änderungsstatus nur für verfolgte Dateien erhalten.

0 Stimmen

Die Präferenzen jedes Benutzers werden unterschiedlich sein, aber Sie können die Ausgabe von 3 verschiedenen Statusaufrufen vergleichen, und das wird Sie wahrscheinlich dazu inspirieren, eine Lösung zu schreiben. vimdiff <(git status --untracked-files=no) <(git status) <(git status --untracked-files)

574voto

Daniel Bruce Punkte 10889

Verwenden Sie dies:

git status -uno

was gleichbedeutend ist mit:

git status --untracked-files=no

Es ist etwas versteckt in den Handbüchern, aber die Manpage für status sagt "unterstützt die gleichen Optionen wie git-commit", also müssen Sie dort nachsehen.

1 Stimmen

Wo schreiben Sie das? In das Terminal oder in die Datei?

1 Stimmen

Das ist ein Befehlszeilenvorgang und keine Bearbeitung der Git-Konfigurationsdatei.

0 Stimmen

Wenn ich git reset --hard <commit id> gemacht habe und dann git status -uno, wird nichts angezeigt, nur untracked files

141voto

Bombe Punkte 77831

Auch:

git config status.showuntrackedfiles no

9 Stimmen

Das ist großartig für ein Repo, das immer ungetrackte Dateien hat, wie z.B. eines in Ihrem Home-Verzeichnis für Dot-Files.

18 Stimmen

Dave, vielleicht .gitignore Die Auflistung eignet sich am besten für "bekannte Unbekannte", während Sie vielleicht sehen möchten "unbekannte Unbekannte" die immer wieder neu auftauchen.

19voto

VonC Punkte 1117238

Beachten Sie, dass, da git 1.8.3 (April, 22d 2013) wissen Sie über die --untracked-files=no auch wenn Sie diese Option nicht von vornherein hinzugefügt haben!

" git status " schlägt den Nutzern vor, sich mit der Verwendung von --untracked-files=no wenn es zu lange dauert.

Siehe commit https://github.com/git/git/commit/5823eb2b28696bf0eb25f6ca35b303447869f85 :

In einigen Repositories erfahren die Benutzer, dass " git status "Der Befehl dauert sehr lange.
Der Befehl verbringt einige Zeit damit, das Dateisystem nach nicht verfolgten Dateien zu durchsuchen.

Erläutern Sie den Kompromiss, der durch die Standardwahl von normal um den Benutzern zu helfen, die richtige Wahl zu treffen, bevor sie über die Konfigurationsvariable sprechen.

Les git status Dokumentation heißt es jetzt:

En -u Option nicht verwendet wird, werden nicht verfolgte Dateien und Verzeichnisse angezeigt (d.h. dasselbe wie bei der Angabe von normal ), damit Sie nicht vergessen, neu erstellte Dateien hinzuzufügen.
Da es zusätzliche Arbeit erfordert, nicht verfolgte Dateien im Dateisystem zu finden, kann dieser Modus in einem großen Arbeitsbaum einige Zeit in Anspruch nehmen. Zeit in einem großen Arbeitsbaum in Anspruch nehmen.
Sie können verwenden no zu haben git status schneller zurückkehren, ohne nicht verfolgte Dateien anzuzeigen
.

Der Standardwert kann mit der Option status.showUntrackedFiles Konfigurationsvariable, die in git config .

2 Stimmen

@Tshepang Vielen Dank. Ich habe die Antwort so bearbeitet, dass sie den richtigen Link enthält und den genauen Commit hinzufügt, in dem diese Änderung eingeführt wurde.

0 Stimmen

Ich bin neu in Git - können Sie mir bitte sagen, wo ich diese Befehle schreiben muss, um nicht verfolgte Dateien nicht anzuzeigen? Ich habe versucht, sie in Terminal zu schreiben, aber untracked Dateien sind immer noch angezeigt.

0 Stimmen

@FrenkyB Was haben Sie genau in Ihr Terminal eingegeben (welches Betriebssystem übrigens? Und welche Git-Version verwenden Sie?)

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X