summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2022-10-17 15:25:51 -0700
committerJunio C Hamano <gitster@pobox.com>2022-10-17 15:25:51 -0700
commitdac8a36b534b6c8ed2b9be2398e225a9ea272ceb (patch)
tree99e5a3ce483d29cfa5d1658611210a46c435f1e2
parent5948fb6eafc5e8f810c9c4c0056f881d2f2c63b0 (diff)
downloadgit-htmldocs-dac8a36b534b6c8ed2b9be2398e225a9ea272ceb.tar.gz
Autogenerated HTML docs for v2.38.0-118-g47328
-rw-r--r--RelNotes/2.39.0.txt34
-rw-r--r--SubmittingPatches.html6
-rw-r--r--SubmittingPatches.txt4
-rw-r--r--config.txt2
-rw-r--r--git-config.html22
-rw-r--r--git-fsmonitor--daemon.html60
-rw-r--r--git-fsmonitor--daemon.txt37
-rw-r--r--howto/coordinate-embargoed-releases.html2
-rw-r--r--howto/keep-canonical-history-correct.html2
-rw-r--r--howto/maintain-git.html2
-rw-r--r--howto/new-command.html2
-rw-r--r--howto/rebase-from-internal-branch.html2
-rw-r--r--howto/rebuild-from-update-hook.html2
-rw-r--r--howto/recover-corrupted-blob-object.html2
-rw-r--r--howto/recover-corrupted-object-harder.html2
-rw-r--r--howto/revert-a-faulty-merge.html2
-rw-r--r--howto/revert-branch-rebase.html2
-rw-r--r--howto/separating-topic-branches.html2
-rw-r--r--howto/setup-git-server-over-http.html2
-rw-r--r--howto/update-hook-example.html2
-rw-r--r--howto/use-git-daemon.html2
-rw-r--r--howto/using-merge-subtree.html2
-rw-r--r--howto/using-signed-tag-in-pull-request.html2
23 files changed, 171 insertions, 26 deletions
diff --git a/RelNotes/2.39.0.txt b/RelNotes/2.39.0.txt
index a6ee7c899..c8e333eeb 100644
--- a/RelNotes/2.39.0.txt
+++ b/RelNotes/2.39.0.txt
@@ -7,6 +7,9 @@ UI, Workflows & Features
* "git grep" learned to expand the sparse-index more lazily and on
demand in a sparse checkout.
+ * By default, use of fsmonitor on a repository on networked
+ filesystem is disabled. Add knobs to make it workable on macOS.
+
Performance, Internal Implementation, Development Support etc.
--------------------------------------------------------------
@@ -26,6 +29,10 @@ Performance, Internal Implementation, Development Support etc.
* "scalar unregister" in a repository that is already been
unregistered reported an error.
+ * Remove error detection from a function that fetches from promisor
+ remotes, and make it die when such a fetch fails to bring all the
+ requested objects, to give an early failure to various operations.
+
Fixes since v2.38
-----------------
@@ -78,6 +85,29 @@ Fixes since v2.38
from "ssh-keygen".
(merge 36fb0d07d8 pw/ssh-sign-report-errors later to maint).
+ * Code clean-up that results in plugging a leak.
+ (merge 246526d019 rs/bisect-start-leakfix later to maint).
+
+ * "GIT_EDITOR=: git branch --edit-description" resulted in failure,
+ which has been corrected.
+ (merge e288b3de35 jc/branch-description-unset later to maint).
+
+ * The code to clean temporary object directories (used for
+ quarantine) tried to remove them inside its signal handler, which
+ was a no-no.
+ (merge 22613b25ec jc/tmp-objdir later to maint).
+
+ * Update comment in the Makefile about the RUNTIME_PREFIX config knob.
+ (merge ebb6c16607 dd/document-runtime-prefix-better later to maint).
+
+ * Clarify that "the sentence after <area>: prefix does not begin with
+ a capital letter" rule applies only to the commit title.
+ (merge 3991bb73dd jc/use-of-uc-in-log-messages later to maint).
+
+ * "git branch --edit-description" on an unborh branch misleadingly
+ said that no such branch exists, which has been corrected.
+ (merge bcfc82bd48 rj/branch-edit-desc-unborn later to maint).
+
* Other code cleanup, docfix, build fix, etc.
(merge c34a6bd291 so/diff-merges-cleanup later to maint).
(merge 5e7c8b75e7 ab/test-malloc-with-sanitize-leak later to maint).
@@ -88,3 +118,7 @@ Fixes since v2.38
(merge 45350aeb11 jk/sequencer-missing-author-name-check later to maint).
(merge edbf9a2e20 nb/doc-mergetool-typofix later to maint).
(merge b004c90282 rs/gc-pack-refs-simplify later to maint).
+ (merge 69c5f17f11 jk/cleanup-callback-parameters later to maint).
+ (merge 7c07f36ad2 ab/unused-annotation later to maint).
+ (merge f7669676d0 rs/use-fspathncmp later to maint).
+ (merge a677d3c416 pw/remove-rebase-p-test later to maint).
diff --git a/SubmittingPatches.html b/SubmittingPatches.html
index 0a8fedc4e..45510f0d1 100644
--- a/SubmittingPatches.html
+++ b/SubmittingPatches.html
@@ -904,7 +904,9 @@ githooks.txt: improve the intro section
<div class="paragraph"><p>If in doubt which identifier to use, run <code>git log --no-merges</code> on the
files you are modifying to see the current conventions.</p></div>
<div class="paragraph" id="summary-section"><p>The title sentence after the "area:" prefix omits the full stop at the
-end, and its first word is not capitalized unless there is a reason to
+end, and its first word is not capitalized (the omission
+of capitalization applies only to the word after the "area:"
+prefix of the title) unless there is a reason to
capitalize it other than because it is the first word in the sentence.
E.g. "doc: clarify&#8230;", not "doc: Clarify&#8230;", or "githooks.txt:
improve&#8230;", not "githooks.txt: Improve&#8230;". But "refs: HEAD is also
@@ -1444,7 +1446,7 @@ this problem around.</p></div>
<div id="footer">
<div id="footer-text">
Last updated
- 2022-10-03 09:55:18 PDT
+ 2022-10-17 15:23:35 PDT
</div>
</div>
</body>
diff --git a/SubmittingPatches.txt b/SubmittingPatches.txt
index 5bd795e5d..927f7329a 100644
--- a/SubmittingPatches.txt
+++ b/SubmittingPatches.txt
@@ -153,7 +153,9 @@ files you are modifying to see the current conventions.
[[summary-section]]
The title sentence after the "area:" prefix omits the full stop at the
-end, and its first word is not capitalized unless there is a reason to
+end, and its first word is not capitalized (the omission
+of capitalization applies only to the word after the "area:"
+prefix of the title) unless there is a reason to
capitalize it other than because it is the first word in the sentence.
E.g. "doc: clarify...", not "doc: Clarify...", or "githooks.txt:
improve...", not "githooks.txt: Improve...". But "refs: HEAD is also
diff --git a/config.txt b/config.txt
index 5b5b97656..1e2058316 100644
--- a/config.txt
+++ b/config.txt
@@ -423,6 +423,8 @@ include::config/filter.txt[]
include::config/fsck.txt[]
+include::config/fsmonitor--daemon.txt[]
+
include::config/gc.txt[]
include::config/gitcvs.txt[]
diff --git a/git-config.html b/git-config.html
index 541b82775..7ad61933d 100644
--- a/git-config.html
+++ b/git-config.html
@@ -5863,6 +5863,28 @@ your way to pre-sort the list. After Git version 2.20 a hash implementation
is used instead, so there&#8217;s now no reason to pre-sort the list.</p></div>
</dd>
<dt class="hdlist1">
+fsmonitor.allowRemote
+</dt>
+<dd>
+<p>
+ By default, the fsmonitor daemon refuses to work against network-mounted
+ repositories. Setting <code>fsmonitor.allowRemote</code> to <code>true</code> overrides this
+ behavior. Only respected when <code>core.fsmonitor</code> is set to <code>true</code>.
+</p>
+</dd>
+<dt class="hdlist1">
+fsmonitor.socketDir
+</dt>
+<dd>
+<p>
+ This Mac OS-specific option, if set, specifies the directory in
+ which to create the Unix domain socket used for communication
+ between the fsmonitor daemon and various Git commands. The directory must
+ reside on a native Mac OS filesystem. Only respected when <code>core.fsmonitor</code>
+ is set to <code>true</code>.
+</p>
+</dd>
+<dt class="hdlist1">
gc.aggressiveDepth
</dt>
<dd>
diff --git a/git-fsmonitor--daemon.html b/git-fsmonitor--daemon.html
index 9afdb5130..80dcb9852 100644
--- a/git-fsmonitor--daemon.html
+++ b/git-fsmonitor--daemon.html
@@ -740,7 +740,7 @@ git-fsmonitor&#45;&#45;daemon(1) Manual Page
<h2>NAME</h2>
<div class="sectionbody">
<p>git-fsmonitor--daemon -
- A Built-in File System Monitor
+ A Built-in Filesystem Monitor
</p>
</div>
</div>
@@ -761,7 +761,7 @@ git-fsmonitor&#45;&#45;daemon(1) Manual Page
<h2 id="_description">DESCRIPTION</h2>
<div class="sectionbody">
<div class="paragraph"><p>A daemon to watch the working directory for file and directory
-changes using platform-specific file system notification facilities.</p></div>
+changes using platform-specific filesystem notification facilities.</p></div>
<div class="paragraph"><p>This daemon communicates directly with commands like <code>git status</code>
using the <a href="technical/api-simple-ipc.html">simple IPC</a> interface
instead of the slower <a href="githooks.html">githooks(5)</a> interface.</p></div>
@@ -829,12 +829,64 @@ automatically start it (if necessary).</p></div>
<h2 id="_caveats">CAVEATS</h2>
<div class="sectionbody">
<div class="paragraph"><p>The fsmonitor daemon does not currently know about submodules and does
-not know to filter out file system events that happen within a
+not know to filter out filesystem events that happen within a
submodule. If fsmonitor daemon is watching a super repo and a file is
modified within the working directory of a submodule, it will report
the change (as happening against the super repo). However, the client
will properly ignore these extra events, so performance may be affected
but it will not cause an incorrect result.</p></div>
+<div class="paragraph"><p>By default, the fsmonitor daemon refuses to work against network-mounted
+repositories; this may be overridden by setting <code>fsmonitor.allowRemote</code> to
+<code>true</code>. Note, however, that the fsmonitor daemon is not guaranteed to work
+correctly with all network-mounted repositories and such use is considered
+experimental.</p></div>
+<div class="paragraph"><p>On Mac OS, the inter-process communication (IPC) between various Git
+commands and the fsmonitor daemon is done via a Unix domain socket (UDS)&#8201;&#8212;&#8201;a
+special type of file&#8201;&#8212;&#8201;which is supported by native Mac OS filesystems,
+but not on network-mounted filesystems, NTFS, or FAT32. Other filesystems
+may or may not have the needed support; the fsmonitor daemon is not guaranteed
+to work with these filesystems and such use is considered experimental.</p></div>
+<div class="paragraph"><p>By default, the socket is created in the <code>.git</code> directory, however, if the
+<code>.git</code> directory is on a network-mounted filesystem, it will be instead be
+created at <code>$HOME/.git-fsmonitor-*</code> unless <code>$HOME</code> itself is on a
+network-mounted filesystem in which case you must set the configuration
+variable <code>fsmonitor.socketDir</code> to the path of a directory on a Mac OS native
+filesystem in which to create the socket file.</p></div>
+<div class="paragraph"><p>If none of the above directories (<code>.git</code>, <code>$HOME</code>, or <code>fsmonitor.socketDir</code>)
+is on a native Mac OS file filesystem the fsmonitor daemon will report an
+error that will cause the daemon and the currently running command to exit.</p></div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_configuration">CONFIGURATION</h2>
+<div class="sectionbody">
+<div class="paragraph"><p>Everything below this line in this section is selectively included
+from the <a href="git-config.html">git-config(1)</a> documentation. The content is the same
+as what&#8217;s found there:</p></div>
+<div class="dlist"><dl>
+<dt class="hdlist1">
+fsmonitor.allowRemote
+</dt>
+<dd>
+<p>
+ By default, the fsmonitor daemon refuses to work against network-mounted
+ repositories. Setting <code>fsmonitor.allowRemote</code> to <code>true</code> overrides this
+ behavior. Only respected when <code>core.fsmonitor</code> is set to <code>true</code>.
+</p>
+</dd>
+<dt class="hdlist1">
+fsmonitor.socketDir
+</dt>
+<dd>
+<p>
+ This Mac OS-specific option, if set, specifies the directory in
+ which to create the Unix domain socket used for communication
+ between the fsmonitor daemon and various Git commands. The directory must
+ reside on a native Mac OS filesystem. Only respected when <code>core.fsmonitor</code>
+ is set to <code>true</code>.
+</p>
+</dd>
+</dl></div>
</div>
</div>
<div class="sect1">
@@ -848,7 +900,7 @@ but it will not cause an incorrect result.</p></div>
<div id="footer">
<div id="footer-text">
Last updated
- 2022-04-07 15:08:14 PDT
+ 2022-10-17 15:23:34 PDT
</div>
</div>
</body>
diff --git a/git-fsmonitor--daemon.txt b/git-fsmonitor--daemon.txt
index cc142fb86..8238eadb0 100644
--- a/git-fsmonitor--daemon.txt
+++ b/git-fsmonitor--daemon.txt
@@ -3,7 +3,7 @@ git-fsmonitor{litdd}daemon(1)
NAME
----
-git-fsmonitor--daemon - A Built-in File System Monitor
+git-fsmonitor--daemon - A Built-in Filesystem Monitor
SYNOPSIS
--------
@@ -17,7 +17,7 @@ DESCRIPTION
-----------
A daemon to watch the working directory for file and directory
-changes using platform-specific file system notification facilities.
+changes using platform-specific filesystem notification facilities.
This daemon communicates directly with commands like `git status`
using the link:technical/api-simple-ipc.html[simple IPC] interface
@@ -63,13 +63,44 @@ CAVEATS
-------
The fsmonitor daemon does not currently know about submodules and does
-not know to filter out file system events that happen within a
+not know to filter out filesystem events that happen within a
submodule. If fsmonitor daemon is watching a super repo and a file is
modified within the working directory of a submodule, it will report
the change (as happening against the super repo). However, the client
will properly ignore these extra events, so performance may be affected
but it will not cause an incorrect result.
+By default, the fsmonitor daemon refuses to work against network-mounted
+repositories; this may be overridden by setting `fsmonitor.allowRemote` to
+`true`. Note, however, that the fsmonitor daemon is not guaranteed to work
+correctly with all network-mounted repositories and such use is considered
+experimental.
+
+On Mac OS, the inter-process communication (IPC) between various Git
+commands and the fsmonitor daemon is done via a Unix domain socket (UDS) -- a
+special type of file -- which is supported by native Mac OS filesystems,
+but not on network-mounted filesystems, NTFS, or FAT32. Other filesystems
+may or may not have the needed support; the fsmonitor daemon is not guaranteed
+to work with these filesystems and such use is considered experimental.
+
+By default, the socket is created in the `.git` directory, however, if the
+`.git` directory is on a network-mounted filesystem, it will be instead be
+created at `$HOME/.git-fsmonitor-*` unless `$HOME` itself is on a
+network-mounted filesystem in which case you must set the configuration
+variable `fsmonitor.socketDir` to the path of a directory on a Mac OS native
+filesystem in which to create the socket file.
+
+If none of the above directories (`.git`, `$HOME`, or `fsmonitor.socketDir`)
+is on a native Mac OS file filesystem the fsmonitor daemon will report an
+error that will cause the daemon and the currently running command to exit.
+
+CONFIGURATION
+-------------
+
+include::includes/cmd-config-section-all.txt[]
+
+include::config/fsmonitor--daemon.txt[]
+
GIT
---
Part of the linkgit:git[1] suite
diff --git a/howto/coordinate-embargoed-releases.html b/howto/coordinate-embargoed-releases.html
index 48de33e69..a9ec1dbf7 100644
--- a/howto/coordinate-embargoed-releases.html
+++ b/howto/coordinate-embargoed-releases.html
@@ -873,7 +873,7 @@ Thanks,
<div id="footer">
<div id="footer-text">
Last updated
- 2022-10-11 11:07:52 PDT
+ 2022-10-17 15:24:10 PDT
</div>
</div>
</body>
diff --git a/howto/keep-canonical-history-correct.html b/howto/keep-canonical-history-correct.html
index 0e8d7db56..686216cc3 100644
--- a/howto/keep-canonical-history-correct.html
+++ b/howto/keep-canonical-history-correct.html
@@ -938,7 +938,7 @@ tip of your <em>master</em> again and redo the two merges:</p></div>
<div id="footer">
<div id="footer-text">
Last updated
- 2022-10-11 11:07:51 PDT
+ 2022-10-17 15:24:09 PDT
</div>
</div>
</body>
diff --git a/howto/maintain-git.html b/howto/maintain-git.html
index 61ee5f47e..66010d891 100644
--- a/howto/maintain-git.html
+++ b/howto/maintain-git.html
@@ -1469,7 +1469,7 @@ $ git update-ref -d $mf/ai/topic</code></pre>
<div id="footer">
<div id="footer-text">
Last updated
- 2022-10-11 11:07:52 PDT
+ 2022-10-17 15:24:10 PDT
</div>
</div>
</body>
diff --git a/howto/new-command.html b/howto/new-command.html
index 842daa718..2fcf85bd0 100644
--- a/howto/new-command.html
+++ b/howto/new-command.html
@@ -863,7 +863,7 @@ letter [PATCH 0/n].
<div id="footer">
<div id="footer-text">
Last updated
- 2022-10-11 11:07:49 PDT
+ 2022-10-17 15:24:07 PDT
</div>
</div>
</body>
diff --git a/howto/rebase-from-internal-branch.html b/howto/rebase-from-internal-branch.html
index 1f4a7bbf6..8af2dd691 100644
--- a/howto/rebase-from-internal-branch.html
+++ b/howto/rebase-from-internal-branch.html
@@ -895,7 +895,7 @@ the #1' commit.</p></div>
<div id="footer">
<div id="footer-text">
Last updated
- 2022-10-11 11:07:51 PDT
+ 2022-10-17 15:24:09 PDT
</div>
</div>
</body>
diff --git a/howto/rebuild-from-update-hook.html b/howto/rebuild-from-update-hook.html
index 266b14209..990d0ae02 100644
--- a/howto/rebuild-from-update-hook.html
+++ b/howto/rebuild-from-update-hook.html
@@ -847,7 +847,7 @@ This is still crude and does not protect against simultaneous
<div id="footer">
<div id="footer-text">
Last updated
- 2022-10-11 11:07:51 PDT
+ 2022-10-17 15:24:09 PDT
</div>
</div>
</body>
diff --git a/howto/recover-corrupted-blob-object.html b/howto/recover-corrupted-blob-object.html
index 5e4f2b23d..45542d1a0 100644
--- a/howto/recover-corrupted-blob-object.html
+++ b/howto/recover-corrupted-blob-object.html
@@ -880,7 +880,7 @@ thing.</p></div>
<div id="footer">
<div id="footer-text">
Last updated
- 2022-10-11 11:07:51 PDT
+ 2022-10-17 15:24:09 PDT
</div>
</div>
</body>
diff --git a/howto/recover-corrupted-object-harder.html b/howto/recover-corrupted-object-harder.html
index 122f45f8e..4f9f3f058 100644
--- a/howto/recover-corrupted-object-harder.html
+++ b/howto/recover-corrupted-object-harder.html
@@ -1189,7 +1189,7 @@ int main(int argc, char **argv)
<div id="footer">
<div id="footer-text">
Last updated
- 2022-10-11 11:07:51 PDT
+ 2022-10-17 15:24:09 PDT
</div>
</div>
</body>
diff --git a/howto/revert-a-faulty-merge.html b/howto/revert-a-faulty-merge.html
index 84383b02d..734cbe204 100644
--- a/howto/revert-a-faulty-merge.html
+++ b/howto/revert-a-faulty-merge.html
@@ -1025,7 +1025,7 @@ P---o---o---M---x---x---W---x---M2
<div id="footer">
<div id="footer-text">
Last updated
- 2022-10-11 11:07:51 PDT
+ 2022-10-17 15:24:09 PDT
</div>
</div>
</body>
diff --git a/howto/revert-branch-rebase.html b/howto/revert-branch-rebase.html
index aee4e6d15..6c9dbe397 100644
--- a/howto/revert-branch-rebase.html
+++ b/howto/revert-branch-rebase.html
@@ -907,7 +907,7 @@ Committed merge 7fb9b7262a1d1e0a47bbfdcbbcf50ce0635d3f8f
<div id="footer">
<div id="footer-text">
Last updated
- 2022-10-11 11:07:49 PDT
+ 2022-10-17 15:24:07 PDT
</div>
</div>
</body>
diff --git a/howto/separating-topic-branches.html b/howto/separating-topic-branches.html
index d776d0c52..4f8bf933c 100644
--- a/howto/separating-topic-branches.html
+++ b/howto/separating-topic-branches.html
@@ -841,7 +841,7 @@ o---o"master"</code></pre>
<div id="footer">
<div id="footer-text">
Last updated
- 2022-10-11 11:07:51 PDT
+ 2022-10-17 15:24:09 PDT
</div>
</div>
</body>
diff --git a/howto/setup-git-server-over-http.html b/howto/setup-git-server-over-http.html
index ffe2c0189..be19d2d11 100644
--- a/howto/setup-git-server-over-http.html
+++ b/howto/setup-git-server-over-http.html
@@ -1071,7 +1071,7 @@ help diagnosing the problem, but removes security checks.</p></div>
<div id="footer">
<div id="footer-text">
Last updated
- 2022-10-11 11:07:50 PDT
+ 2022-10-17 15:24:08 PDT
</div>
</div>
</body>
diff --git a/howto/update-hook-example.html b/howto/update-hook-example.html
index 80bf34ca8..6ed30c679 100644
--- a/howto/update-hook-example.html
+++ b/howto/update-hook-example.html
@@ -930,7 +930,7 @@ that JC can make non-fast-forward pushes on it.</p></div>
<div id="footer">
<div id="footer-text">
Last updated
- 2022-10-11 11:07:50 PDT
+ 2022-10-17 15:24:08 PDT
</div>
</div>
</body>
diff --git a/howto/use-git-daemon.html b/howto/use-git-daemon.html
index cbe699c57..b1fb48e0e 100644
--- a/howto/use-git-daemon.html
+++ b/howto/use-git-daemon.html
@@ -791,7 +791,7 @@ a good practice to put the paths after a "--" separator.</p></div>
<div id="footer">
<div id="footer-text">
Last updated
- 2022-10-11 11:07:50 PDT
+ 2022-10-17 15:24:08 PDT
</div>
</div>
</body>
diff --git a/howto/using-merge-subtree.html b/howto/using-merge-subtree.html
index 8ca3ba198..a69c015ee 100644
--- a/howto/using-merge-subtree.html
+++ b/howto/using-merge-subtree.html
@@ -848,7 +848,7 @@ Please note that if the other project merges from you, then it will
<div id="footer">
<div id="footer-text">
Last updated
- 2022-10-11 11:07:50 PDT
+ 2022-10-17 15:24:08 PDT
</div>
</div>
</body>
diff --git a/howto/using-signed-tag-in-pull-request.html b/howto/using-signed-tag-in-pull-request.html
index 8ee55b8ae..a8e4d21f0 100644
--- a/howto/using-signed-tag-in-pull-request.html
+++ b/howto/using-signed-tag-in-pull-request.html
@@ -952,7 +952,7 @@ as part of the merge commit.</p></div>
<div id="footer">
<div id="footer-text">
Last updated
- 2022-10-11 11:07:50 PDT
+ 2022-10-17 15:24:08 PDT
</div>
</div>
</body>