Einrichtung und Konfiguration
Projekte holen und erstellen
Grundlegende Snapshots
Branching und Merging
Projekte teilen und aktualisieren
Inspektion und Vergleich
Patching
Debugging
Externe Systeme
Server-Administration
Anleitungen
- gitattributes
- Konventionen der Kommandozeile
- Tägliches Git
- Häufig gestellte Fragen (FAQ)
- Glossar
- Hooks
- gitignore
- gitmodules
- Revisionen
- Submodule
- Tutorial
- Workflows
- Alle Anleitungen...
Administration
Plumbing-Befehle
- 2.43.1 → 2.52.0 keine Änderungen
-
2.43.0
2023-11-20
- 2.39.1 → 2.42.4 keine Änderungen
-
2.39.0
2022-12-12
- 2.36.1 → 2.38.5 keine Änderungen
-
2.36.0
2022-04-18
SYNOPSIS
git fsmonitor--daemon start git fsmonitor--daemon run git fsmonitor--daemon stop git fsmonitor--daemon status
BESCHREIBUNG
Ein Daemon, der das Arbeitsverzeichnis mithilfe plattformspezifischer Benachrichtigungsfunktionen für Dateisystemänderungen überwacht.
Dieser Daemon kommuniziert direkt mit Befehlen wie git status über die Simple IPC Schnittstelle anstelle der langsameren githooks[5] Schnittstelle.
Dieser Daemon ist in Git integriert, sodass keine Tools von Drittanbietern erforderlich sind.
ANMERKUNGEN
Dieser Daemon ist ein langlebiger Prozess, der zur Überwachung eines einzelnen Arbeitsverzeichnisses und zur Pflege einer Liste der kürzlich geänderten Dateien und Verzeichnisse verwendet wird. Die Leistung von Befehlen wie git status kann erhöht werden, wenn diese nur eine Zusammenfassung der Änderungen im Arbeitsverzeichnis abfragen und das Scannen der Festplatte vermeiden können.
Wenn core.fsmonitor auf true gesetzt ist (siehe git-config[1]), fragen Befehle wie git status den Daemon nach Änderungen ab und starten ihn automatisch (falls erforderlich).
Weitere Informationen finden Sie im Abschnitt "File System Monitor" in git-update-index[1].
HINWEISE
Der fsmonitor-Daemon kennt derzeit keine Submodule und weiß nicht, dass Dateisystemereignisse innerhalb eines Submodules herausgefiltert werden sollen. Wenn der fsmonitor-Daemon ein Super-Repository überwacht und eine Datei im Arbeitsverzeichnis eines Submodules geändert wird, meldet er die Änderung (als Änderung am Super-Repository). Der Client wird diese zusätzlichen Ereignisse jedoch ordnungsgemäß ignorieren, sodass die Leistung beeinträchtigt sein kann, aber kein falsches Ergebnis erzielt wird.
Standardmäßig weigert sich der fsmonitor-Daemon, mit Netzwerklaufwerken zu arbeiten. Dies kann durch Setzen von fsmonitor.allowRemote auf true überschrieben werden. Beachten Sie jedoch, dass der fsmonitor-Daemon möglicherweise nicht mit allen Netzwerklaufwerken korrekt funktioniert, daher wird eine solche Verwendung als experimentell betrachtet.
Unter Mac OS erfolgt die Interprozesskommunikation (IPC) zwischen verschiedenen Git-Befehlen und dem fsmonitor-Daemon über einen Unix-Domain-Socket (UDS) – eine spezielle Art von Datei –, der von nativen Mac OS-Dateisystemen unterstützt wird, jedoch nicht auf Netzwerklaufwerken, NTFS oder FAT32. Andere Dateisysteme haben möglicherweise die erforderliche Unterstützung oder auch nicht; der fsmonitor-Daemon funktioniert mit diesen Dateisystemen möglicherweise nicht garantiert korrekt und eine solche Verwendung wird als experimentell betrachtet.
Standardmäßig wird der Socket im Verzeichnis .git erstellt. Wenn sich das Verzeichnis .git jedoch auf einem Netzwerklaufwerk befindet, wird er stattdessen unter $HOME/.git-fsmonitor-* erstellt, es sei denn, $HOME selbst befindet sich auf einem Netzwerklaufwerk. In diesem Fall müssen Sie die Konfigurationsvariable fsmonitor.socketDir auf den Pfad eines Verzeichnisses auf einem nativen Mac OS-Dateisystem setzen, in dem die Socket-Datei erstellt werden soll.
Wenn keiner der oben genannten Verzeichnisse (.git, $HOME oder fsmonitor.socketDir) auf einem nativen Mac OS-Dateisystem liegt, meldet der fsmonitor-Daemon einen Fehler, der zum Beenden des Daemons und des aktuell laufenden Befehls führt.
KONFIGURATION
Alles unterhalb dieser Zeile in diesem Abschnitt wird selektiv aus der git-config[1]-Dokumentation übernommen. Der Inhalt ist derselbe wie dort zu finden.
- fsmonitor.allowRemote
-
Standardmäßig weigert sich der fsmonitor-Daemon, mit Netzwerklaufwerken zu arbeiten. Das Setzen von
fsmonitor.allowRemoteauftrueüberschreibt dieses Verhalten. Nur wirksam, wenncore.fsmonitorauftruegesetzt ist. - fsmonitor.socketDir
-
Diese Mac OS-spezifische Option gibt, wenn sie gesetzt ist, das Verzeichnis an, in dem der Unix-Domain-Socket zur Kommunikation zwischen dem fsmonitor-Daemon und verschiedenen Git-Befehlen erstellt werden soll. Das Verzeichnis muss sich auf einem nativen Mac OS-Dateisystem befinden. Nur wirksam, wenn
core.fsmonitorauftruegesetzt ist.
GIT
Teil der git[1] Suite