PC & Handy

Was ist eine GITIGNORE-Datei und wie verwende ich sie?

Bei der Arbeit mit einem Git-Repository besteht die Gefahr unerwünschter Daten. Glücklicherweise können Sie eine Datei mit einer GITIGNORE-Erweiterung erstellen und definieren, welche Dateien und Ordner im Projekt ignoriert werden sollen. Sie können globale GITIGNORE-Daten zur Verwendung mit jedem Git-Repository erstellen.

Was ist eine GITIGNORE-Datei und wie verwende ich sie?

So erstellen Sie GITIGNORE-Dateien

GITIGNORE-Dateien sind reine Textdateien, sodass Sie sie mit Notepad oder einem beliebigen Texteditor öffnen können. So erstellen Sie eine GITIGNORE-Datei:

  1. Öffnen Sie einen beliebigen Texteditor und klicken Sie auf Speichern. Ändern Sie den Namen in .gitignore.
  2. Beim Bearbeiten der Datei ist jede Zeile für einen einzelnen Ordner oder eine Datei reserviert, die ein Git ignorieren sollte.

Verwenden Sie „#“, um Kommentare zu einer .gitignore-Datei hinzuzufügen

Verwenden Sie „*“ für eine Platzhalterübereinstimmung

Verwenden Sie #/", um Pfade relativ zur GITIGNORE-Datei zu ignorieren.

Als Beispiel kann Ihr GITIGNORE so aussehen:

# Ordner node_modules ignorieren

node_modules

# Dateien im Zusammenhang mit API-Schlüsseln ignorieren

.env

# Mac-Systemdateien ignorieren

.DS_store

# SASS-Konfigurationsdateien ignorieren

.sass-cache

# Alle Textdateien ignorieren

*.TXT

Wie Sie vielleicht wissen, sind Kommentare optional.

Ignorieren Sie Verzeichnisse, indem Sie deren Pfade angeben und am Ende jeder Zeile „/“ verwenden.

Zum Beispiel:

testen/

Protokolle/

Ladungen/

Während mit dem Wildcard-Symbol „*“ alle Dateien mit einer bestimmten Erweiterung ignoriert werden können, können Sie es mit dem Negationssymbol „!“ kombinieren. Hier ist ein Beispiel:

*.TXT

!readme.txt

!main.txt

Das obige würde das Git anweisen, jede Datei mit der Erweiterung .txt außer readme.txt und main.txt zu ignorieren.

Für Verzeichnisse können Platzhalter verwendet werden. Seien Sie nur vorsichtig, wenn Sie sie verwenden, wie in diesem Beispiel gezeigt:

Prüfung/

!test/beispiel.txt

Sie könnten denken, dass das Git jetzt jede Datei im Verzeichnis „test“ außer „example.txt“ ignoriert. Dies ist jedoch nicht der Fall. Aus Leistungsgründen wird example.txt weiterhin ignoriert, da wir definiert haben, dass das gesamte Verzeichnis "test" ignoriert wird.

Sie haben die Möglichkeit, doppelte Asterisk (**) zu verwenden, um eine beliebige Anzahl von Verzeichnissen und Dateien abzugleichen. Test/**/*.txt weist git beispielsweise an, nur Dateien mit der Endung .txt im Testverzeichnis und seinen Unterverzeichnissen zu ignorieren.

GITIGNORE-Datei So verwenden Sie eine

Drei Möglichkeiten zum Implementieren von GITIGNORE-Dateien

Verwenden Sie ein globales GITIGNORE mit all Ihren Projekten, entweder mit Ihren Kollegen oder allein. Sie können jedoch ein lokales GITIGNORE erstellen oder sogar Ausschlussregeln festlegen.

Erstellen Sie eine lokale GITIGNORE-Datei

Es gibt zwei Möglichkeiten, GITIGNORE-Dateien zu definieren. Sie können eine GITIGNORE-Datei auf Verzeichnisebene haben oder eine Datei im Stammverzeichnis erstellen. In den meisten Fällen enthält GITIGNORE Eigenschaftendateien und Konfigurationsdateien. Wenn Ihre Teamkollegen auch dieselbe GITIGNORE-Datei abrufen, verwenden Sie zur besseren Übersichtlichkeit „#“, um Kommentare hinzuzufügen.

Erstellen Sie eine globale GITIGNORE-Datei

Wenn Sie mit mehreren Git-Repositorys arbeiten, können Sie viel Zeit sparen, indem Sie globale Regeln für Ihre lokalen Repositorys definieren.

  1. Erstellen Sie die GITIGNORE-Datei und definieren Sie die anzuwendenden universellen Regeln.
  2. Verwenden Sie die Eigenschaft core.excludesFiles, um Ihre lokale GITIGNORE-Datei in eine globale umzuwandeln. Verwenden Sie die folgende Zeile:

git config –global core.excludesFile

Erstellen Sie persönliche GITIGNORE-Regeln

Wenn Sie über ein bestimmtes Repository und Regeln verfügen, können Sie die globalen oder lokalen GITIGNORE-Dateien ändern. Diese Regeln können nicht mit anderen Mitgliedern Ihrer Arbeitsgruppe geteilt oder kontrolliert werden. Sie können persönliche GITIGNORE-Regeln für Ihre lokalen Arbeitsverzeichnisse oder Logger-Einstellungen verwenden.

Verwenden der GITIGNORE-Datei für festgeschriebene Dateien

Zugesagte Dateien ignorieren

Festgeschriebene Dateien werden in das Repository integriert, da sie zwischengespeichert werden. Wenn Sie diese Daten ignorieren, müssen sie zuerst entfernt werden. Die empfohlene Methode hierfür besteht darin, diese Dateien zu löschen und die Änderungen dann festzuschreiben und anzuwenden. Sobald Sie dies getan haben, können Sie GITIGNORE schließlich verwenden, indem Sie eine Regel definieren, bei der die Datei lokal ignoriert wird. Fügen Sie diese Zeile hinzu:

git rm –cached

Auf diese Weise wird die Datei aus dem Repository entfernt, obwohl sie im Arbeitsverzeichnis verbleibt. Eine GITIGNORE-Datei mit dieser Regel sollte sich im Arbeitsverzeichnis befinden.

Commit ehemals ignorierte Datei

Wenn Sie eine ignorierte Datei festschreiben möchten, können Sie dies mit der Zeile „git add“ und der Option „force“ tun. Wenn Sie beispielsweise example.txt aus der GITIGNORE-Datei entfernen möchten, während das Repository t festgeschrieben bleibt, fügen Sie Zeilen ein:

git add -f example.txt

git commit -m „Erzwinge das Hinzufügen von example.txt“.

Sie haben jetzt eine ignorierte Datei zum Repository hinzugefügt. Der letzte Schritt besteht darin, die GITIGNORE-Datei zu ändern, indem das ignorierende Muster oder die Regel entfernt wird.

Was ist die GITIGNORE-Datei?

Nutzen Sie GITIGNORE zu Ihrem Vorteil

Da GITIGNORE-Dateien in fast jedem Projekt vorhanden sind, müssen Sie lernen, sie zu verwenden. Obwohl die Befehle einfach sind, ist es wichtig, Ihre Regeln zu definieren und die richtigen Dateien zu ignorieren. Mit dem richtigen Einsatz von GITIGNORE sparen Sie Zeit und optimieren Ihr Projekt.

Wie oft benötigen Sie GITIGNORE-Dateien im Git-Repository? Verwenden Sie hauptsächlich globale oder lokale Regeln? Bitte teilen Sie Ihre Erfahrungen im Kommentarbereich.

$config[zx-auto] not found$config[zx-overlay] not found