Die gitignore-Datei in Git

Abdul Jabbar 30 Januar 2023
  1. Dateien in Git ignorieren
  2. Lokale .gitignore-Datei
  3. Globale .gitignore-Datei
Die gitignore-Datei in Git

Wenn wir mit dem Git-Repository arbeiten, um Commits vorzunehmen, entscheiden wir, welche Datei wir mit den Befehlen git add FILENAME übergeben möchten, und dann führen wir den git commit durch.

Aber was ist, wenn wir einige Dateien im lokalen Repository nicht festschreiben wollen und sie dann versehentlich festschreiben? Dann gibt es den einfachsten Weg, mit dieser Situation umzugehen. In diesem Fall verwenden wir den Befehl .gitignore, um dieses Problem zu lösen. Dadurch wird sichergestellt, dass Git diese Dateien nicht verfolgt und Git sie ignoriert. Darüber hinaus können wir sagen, dass die Dateibefehle .gitignore herausfinden, welche Dateien in einem lokalen Repository ignoriert werden sollen.

Lokal befindet sich im Root-Verzeichnis unseres Projekts eine .gitignore-Datei. Wir können auch eine globale .gitignore-Datei erstellen, wobei alle Änderungen im Git-Repository ignoriert werden.

Um eine lokale Datei zu erstellen, müssen wir eine Textdatei mit dem Namen .gitignore erstellen, und denken Sie daran, ein "." vor den Dateinamen zu setzen. Danach können wir es nach unseren Bedürfnissen bearbeiten. Zusätzliche Dateien oder Ordner sollten in jeder neuen Zeile aufgelistet werden, die wir ignorieren möchten.

Die Einträge können in der Datei dem unten genannten Muster folgen.

  • * Dies kann als Wildcard-Übereinstimmung verwendet werden
  • / Dies kann verwendet werden, um Pfadnamen relativ zur .gitignore-Datei zu ignorieren
  • # Dies kann verwendet werden, um Kommentare zu einer .gitignore-Datei hinzuzufügen

Dateien in Git ignorieren

Wenn wir Dateien in das Git-Repository verschieben, kommen wir durch viele Dateien, die wir ignorieren möchten; daher besteht .gitignore aus der Liste von Dateien, die Git-Dateien mitteilen, dass wir ignorieren müssen, wenn Änderungen festgeschrieben werden. Einige von ihnen können nicht verfolgt werden; Daher können wir sie weder committen noch per Git-Push-Befehl an das Repository senden.

Dieses Verfahren kann langsam werden, wenn die Last des Empfangens und Sendens von Dateien aus dem lokalen Repository zu groß wird. Unten konfigurieren wir Git so, dass die Dateien ignoriert werden, die wir nicht in Git übergeben möchten.

Lokale .gitignore-Datei

Zuerst entwickeln wir eine .gitignore-Datei im Stammverzeichnis und erstellen einen Befehl zum Ignorieren von Dateien und Verzeichnissen, wenn wir mit dem Git-Befehl einen Commit durchführen. Für andere Benutzer, die das Repository klonen, gibt es einige zu ignorierende Regeln, die durch das Übertragen der .gitignore-Datei in unser Remote-Repository zu ziehen sind.

Im Folgenden finden Sie die Regeln für den Zugriff auf die lokale gitignore-Datei.

  • Greifen Sie auf das Git-Repository zu.
  • Gehen Sie zum Speicherort unseres aktuellen Git-Repositorys.
  • Erstellen Sie eine .gitignore-Datei für unser Repository.
  • Pushe die .gitignore-Datei in unser Repository.
$ touch .gitignore

Wenn der oben genannte Befehl erfolgreich ist, erfolgt keine Ausgabe. Wenn wir bereit sind, eine eingecheckte Datei zu ignorieren, sollten wir sie löschen, bevor wir eine Regel zum Ignorieren hinzufügen.

$ git rm --cached FILENAME

Globale .gitignore-Datei

Für jede Verwendung, oder wir können global sagen, können wir eine .gitignore-Datei entwickeln, die Regeln für das Ignorieren von Dateien in all unseren Git-Repositories auf unserem PC festlegt. Zu diesem Zweck können wir die Datei *~/.gitignore_global ändern und einige Regeln dafür aufstellen.

Im Folgenden sind die Regeln für den Zugriff auf die globale gitignore-Datei aufgeführt:

  1. Greifen Sie auf das Git-Repository zu.
  2. Führen Sie Git mit dem folgenden Befehl zur Verwendung der Exclude-Datei.
$ git config --global core.excludesfile ~/.gitignore_global
Abdul Jabbar avatar Abdul Jabbar avatar

Abdul is a software engineer with an architect background and a passion for full-stack web development with eight years of professional experience in analysis, design, development, implementation, performance tuning, and implementation of business applications.

LinkedIn