Git
English ▾ トピック ▾ 最新バージョン ▾ git-fsmonitor--daemon の最終更新は 2.43.0

NAME

git-fsmonitor—​daemon - ビルトインファイルシステムモニター

SYNOPSIS

git fsmonitor--daemon start
git fsmonitor--daemon run
git fsmonitor--daemon stop
git fsmonitor--daemon status

DESCRIPTION

プラットフォーム固有のファイルシステム通知機能を使用して、作業ディレクトリのファイルとディレクトリの変更を監視するデーモン。

このデーモンは、遅いgithooks[5]インターフェースの代わりに、シンプルなIPCインターフェースを使用して、git statusのようなコマンドと直接通信します。

このデーモンは Git に組み込まれているため、サードパーティ製のツールは必要ありません。

OPTIONS

start

バックグラウンドでデーモンを開始します。

run

フォアグラウンドでデーモンを実行します。

stop

現在の作業ディレクトリで実行中のデーモンがあれば停止します。

status

デーモンが現在の作業ディレクトリを監視している場合は、ゼロステータスで終了します。

REMARKS

このデーモンは、単一の作業ディレクトリを監視し、最近変更されたファイルとディレクトリのリストを保持するために使用される、長時間実行されるプロセスです。git statusのようなコマンドのパフォーマンスは、作業ディレクトリの変更の概要を要求するだけで、ディスクのスキャンを回避できる場合に向上します。

core.fsmonitortrueに設定されている場合(git-config[1]を参照)、git statusのようなコマンドはデーモンに変更を要求し、(必要な場合は)自動的に開始します。

詳細については、git-update-index[1]の「ファイルシステムモニター」セクションを参照してください。

CAVEATS

fsmonitorデーモンは現在サブモジュールを認識しておらず、サブモジュール内で発生するファイルシステムイベントをフィルタリングする方法を知りません。fsmonitorデーモンがスーパリポジトリを監視していて、サブモジュールの作業ディレクトリ内のファイルが変更された場合、変更を(スーパリポジトリに対して発生したとして)報告します。ただし、クライアントはこれらの追加イベントを適切に無視するため、パフォーマンスに影響を与える可能性がありますが、誤った結果を引き起こすことはありません。

デフォルトでは、fsmonitorデーモンはネットワークマウントされたリポジトリでの動作を拒否します。これはfsmonitor.allowRemotetrueに設定することで上書きできます。ただし、fsmonitorデーモンがすべてのネットワークマウントされたリポジトリで正しく動作することが保証されているわけではないため、そのような使用は実験的と見なされます。

Mac OSでは、さまざまなGitコマンドとfsmonitorデーモン間のプロセス間通信(IPC)は、Unixドメインソケット(UDS)を介して行われます。これは、ネイティブのMac OSファイルシステムではサポートされていますが、ネットワークマウントされたファイルシステム、NTFS、またはFAT32ではサポートされていない特別なタイプのファイルです。他のファイルシステムには必要なサポートがある場合とない場合があります。fsmonitorデーモンはこれらのファイルシステムで動作することが保証されておらず、そのような使用は実験的と見なされます。

デフォルトでは、ソケットは.gitディレクトリに作成されます。ただし、.gitディレクトリがネットワークマウントされたファイルシステムにある場合は、$HOME自体がネットワークマウントされたファイルシステムにない限り、代わりに$HOME/.git-fsmonitor-*に作成されます。その場合は、構成変数fsmonitor.socketDirを、ソケットファイルを作成するMac OSネイティブファイルシステムのディレクトリのパスに設定する必要があります。

上記のディレクトリ(.git$HOME、またはfsmonitor.socketDir)のいずれもネイティブのMac OSファイルシステム上にない場合、fsmonitorデーモンはエラーを報告し、デーモンと現在実行中のコマンドが終了します。

CONFIGURATION

このセクションのこの行より下のすべては、git-config[1]ドキュメントから選択的に含まれています。内容は、そこにあるものと同じです。

fsmonitor.allowRemote

デフォルトでは、fsmonitorデーモンはネットワークマウントされたリポジトリでの動作を拒否します。fsmonitor.allowRemotetrueに設定すると、この動作が上書きされます。core.fsmonitortrueに設定されている場合にのみ有効です。

fsmonitor.socketDir

このMac OS固有のオプションは、設定されている場合、fsmonitorデーモンとさまざまなGitコマンド間の通信に使用されるUnixドメインソケットを作成するディレクトリを指定します。ディレクトリは、ネイティブのMac OSファイルシステム上にある必要があります。core.fsmonitortrueに設定されている場合にのみ有効です。

GIT

git[1]スイートの一部

scroll-to-top