2017-07-21 6 views
1

Die Frage ist für Windows OS. Ich muss ein vorher ignoriertes direkt (und alle Dateien innerhalb) meinem Repo hinzufügen. Also, ich ging weg und aktualisierte meine .gitignore, legte meine Änderungen fest und fusionierte sie in den Hauptzweig. Aber wenn ich den Status git, sehe ich nicht mein Verzeichnis in der "Untracked" Liste von Dateien. Mit anderen Worten, git ignoriert sie immer noch, selbst wenn .gitignore aktualisiert wird.Git hinzufügen zuvor "ignorierte" Datei in Repo funktioniert nicht

Als ich ging in .git/info/exclude Datei - es sieht aus wie die Daten im Cache gespeichert werden. Gibt es eine sauberere Möglichkeit, diese Liste zu aktualisieren, ohne sie manuell zu hacken?

KR,

+0

* "Wenn ich innen' .git/info/exclude' Datei ging - es sieht aus wie die Daten zwischengespeichert wird. "* -' .git/info/exclude "ist kein Cache. Es ist eine projektspezifische private Ausschlussdatei. Du und nur du (und nicht Git) schreib es. – axiac

+1

@axiac omg aaaarrgghhh !!!! Als ich das zum ersten Mal benutzt habe, muss ich das dann wieder einbauen !!! total vergessen :(okay, so kann ich nur diese Datei löschen? und Eureka? – ha9u63ar

+0

Sie können es löschen, oder Sie können entfernen Sie die Muster, die Sie dort nicht benötigen. Es hat das gleiche Format wie '.gitignore' aber es ist nicht mit jemandem geteilt, jeder Klon des Repos hat einen, der leer beginnt (alles, was es enthält, sind mehrere Zeilen mit Kommentaren oben.) Lesen Sie mehr über ['.gitignore'] (https://git-scm.com/docs/ gitignore); es wird auch die Rolle von '.git/info/exclude' erklärt. – axiac

Antwort

1

Die Datei .git/info/exclude ($GIT_DIR/info/exclude korrekt sein) ist eine der Dateien von Git zu lesen, wenn es Dateien von Tracking ausschließen kommt.

Es handelt sich um eine projektspezifische, persönliche Ausschlussdatei. Es wird nicht mit den anderen Klonen des Repos geteilt.
Lesen Sie mehr auf der Dokumentationsseite von .gitignore.

Ihre wahrscheinlich enthält versehentlich die Muster, die Sie gerade von .gitignore entfernt haben. Diese Muster sollten nicht an erster Stelle stehen, sondern nur in .gitignore.

Da die Dokumentation sagt:

Muster, die zu einem bestimmten Repository spezifisch sind, aber müssen nicht mit anderen verwandten Repositories (zB Hilfsdateien gemeinsam genutzt werden, die innerhalb des Repository leben aber sind spezifisch für ein Benutzer-Workflow) sollte in die $GIT_DIR/info/exclude Datei gehen.

Zum Beispiel, wenn Sie ein JetBrains Produkt verwenden Sie den Code und alle anderen nutzt Eclipse zu entwickeln, können Sie .idea in Ihre .git/info/exclude setzen zu vermeiden, die bestimmte Dateien auf dem Repo-IDE-Zugabe und unübersichtlich .gitignore mit Mustern zu vermeiden die nicht mit dem Projekt selbst zusammenhängen.
(Natürlich können Sie besser .idea in der globalen .gitignore Datei hinzufügen, aber das ist eine andere Geschichte.)

Verwandte Themen