@@ -3,90 +3,61 @@ git-fsmonitor--daemon(1)
3
3
4
4
NAME
5
5
----
6
- git-fsmonitor--daemon - (EXPERIMENTAL) Builtin file system monitor daemon
6
+ git-fsmonitor--daemon - (EXPERIMENTAL) A Built-in File System Monitor
7
7
8
8
SYNOPSIS
9
9
--------
10
10
[verse]
11
- 'git fsmonitor--daemon' --start
12
- 'git fsmonitor--daemon' --run
13
- 'git fsmonitor--daemon' --stop
14
- 'git fsmonitor--daemon' --is-running
15
- 'git fsmonitor--daemon' --is-supported
16
- 'git fsmonitor--daemon' --query <token>
17
- 'git fsmonitor--daemon' --query-index
18
- 'git fsmonitor--daemon' --flush
11
+ 'git fsmonitor--daemon' start
12
+ 'git fsmonitor--daemon' run
13
+ 'git fsmonitor--daemon' stop
14
+ 'git fsmonitor--daemon' status
19
15
20
16
DESCRIPTION
21
17
-----------
22
18
23
19
NOTE! This command is still only an experiment, subject to change dramatically
24
20
(or even to be abandoned).
25
21
26
- Monitors files and directories in the working directory for changes using
27
- platform-specific file system notification facilities.
22
+ A daemon to watch the working directory for file and directory
23
+ changes using platform-specific file system notification facilities.
28
24
29
- It communicates directly with commands like `git status` using the
30
- link:technical/api-simple-ipc.html[simple IPC] interface instead of
31
- the slower linkgit:githooks[5] interface.
25
+ This daemon communicates directly with commands like `git status`
26
+ using the link:technical/api-simple-ipc.html[simple IPC] interface
27
+ instead of the slower linkgit:githooks[5] interface.
28
+
29
+ This daemon is built into Git so that no third-party tools are
30
+ required.
32
31
33
32
OPTIONS
34
33
-------
35
34
36
- -- start::
37
- Starts the fsmonitor daemon in the background.
35
+ start::
36
+ Starts a daemon in the background.
38
37
39
- -- run::
40
- Runs the fsmonitor daemon in the foreground.
38
+ run::
39
+ Runs a daemon in the foreground.
41
40
42
- -- stop::
43
- Stops the fsmonitor daemon running for the current working
41
+ stop::
42
+ Stops the daemon running in the current working
44
43
directory, if present.
45
44
46
- --is-running ::
47
- Exits with zero status if the fsmonitor daemon is watching the
45
+ status ::
46
+ Exits with zero status if a daemon is watching the
48
47
current working directory.
49
48
50
- --is-supported::
51
- Exits with zero status if the fsmonitor daemon feature is supported
52
- on this platform.
53
-
54
- --query <token>::
55
- Connects to the fsmonitor daemon (starting it if necessary) and
56
- requests the list of changed files and directories since the
57
- given token.
58
- This is intended for testing purposes.
59
-
60
- --query-index::
61
- Read the current `<token>` from the File System Monitor index
62
- extension (if present) and use it to query the fsmonitor daemon.
63
- This is intended for testing purposes.
64
-
65
- --flush::
66
- Force the fsmonitor daemon to flush its in-memory cache and
67
- re-sync with the file system.
68
- This is intended for testing purposes.
69
-
70
49
REMARKS
71
50
-------
72
- The fsmonitor daemon is a long running process that will watch a single
73
- working directory. Commands, such as `git status`, should automatically
74
- start it (if necessary) when `core.useBuiltinFSMonitor` is set to `true`
75
- (see linkgit:git-config[1]).
76
-
77
- Configure the built-in FSMonitor via `core.useBuiltinFSMonitor` in each
78
- working directory separately, or globally via `git config --global
79
- core.useBuiltinFSMonitor true`.
80
51
81
- Tokens are opaque strings. They are used by the fsmonitor daemon to
82
- mark a point in time and the associated internal state. Callers should
83
- make no assumptions about the content of the token. In particular,
84
- the should not assume that it is a timestamp.
52
+ This daemon is a long running process used to watch a single working
53
+ directory and maintain a list of the recently changed files and
54
+ directories. Performance of commands such as `git status` can be
55
+ increased if they just ask for a summary of changes to the working
56
+ directory and can avoid scanning the disk.
85
57
86
- Query commands send a request-token to the daemon and it responds with
87
- a summary of the changes that have occurred since that token was
88
- created. The daemon also returns a response-token that the client can
89
- use in a future query.
58
+ When `core.useBuiltinFSMonitor` is set to `true` (see
59
+ linkgit:git-config[1]) commands, such as `git status`, will ask the
60
+ daemon for changes and automatically start it (if necessary).
90
61
91
62
For more information see the "File System Monitor" section in
92
63
linkgit:git-update-index[1].
@@ -99,8 +70,8 @@ not know to filter out file system events that happen within a
99
70
submodule. If fsmonitor daemon is watching a super repo and a file is
100
71
modified within the working directory of a submodule, it will report
101
72
the change (as happening against the super repo). However, the client
102
- should properly ignore these extra events, so performance may be affected
103
- but it should not cause an incorrect result.
73
+ will properly ignore these extra events, so performance may be affected
74
+ but it will not cause an incorrect result.
104
75
105
76
GIT
106
77
---
0 commit comments