summaryrefslogtreecommitdiffstats
path: root/git-update-index.html
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2017-03-17 14:07:26 -0700
committerJunio C Hamano <gitster@pobox.com>2017-03-17 14:07:26 -0700
commit3d4a66d7358fa82107049059acd4d5defbe3d470 (patch)
treefb3e95971120da26ec02d490caae437a2098c7fe /git-update-index.html
parentfe1f8a0cb581e500a90f33b456678567befe763d (diff)
downloadgit-htmldocs-3d4a66d7358fa82107049059acd4d5defbe3d470.tar.gz
Autogenerated HTML docs for v2.12.0-399-g9d77b
Diffstat (limited to 'git-update-index.html')
-rw-r--r--git-update-index.html41
1 files changed, 32 insertions, 9 deletions
diff --git a/git-update-index.html b/git-update-index.html
index 3761288d8..7e9ae2cb9 100644
--- a/git-update-index.html
+++ b/git-update-index.html
@@ -1025,15 +1025,16 @@ may not support it yet.</p></div>
</dt>
<dd>
<p>
- Enable or disable split index mode. If enabled, the index is
- split into two files, $GIT_DIR/index and $GIT_DIR/sharedindex.&lt;SHA-1&gt;.
- Changes are accumulated in $GIT_DIR/index while the shared
- index file contains all index entries stays unchanged. If
- split-index mode is already enabled and <code>--split-index</code> is
- given again, all changes in $GIT_DIR/index are pushed back to
- the shared index file. This mode is designed for very large
- indexes that take a significant amount of time to read or write.
+ Enable or disable split index mode. If split-index mode is
+ already enabled and <code>--split-index</code> is given again, all
+ changes in $GIT_DIR/index are pushed back to the shared index
+ file.
</p>
+<div class="paragraph"><p>These options take effect whatever the value of the <code>core.splitIndex</code>
+configuration variable (see <a href="git-config.html">git-config(1)</a>). But a warning is
+emitted when the change goes against the configured value, as the
+configured value will take effect next time the index is read and this
+will remove the intended effect of the option.</p></div>
</dd>
<dt class="hdlist1">
--untracked-cache
@@ -1324,6 +1325,28 @@ precedence over assume-unchanged bit when both are set.</p></div>
</div>
</div>
<div class="sect1">
+<h2 id="_split_index">Split index</h2>
+<div class="sectionbody">
+<div class="paragraph"><p>This mode is designed for repositories with very large indexes, and
+aims at reducing the time it takes to repeatedly write these indexes.</p></div>
+<div class="paragraph"><p>In this mode, the index is split into two files, $GIT_DIR/index and
+$GIT_DIR/sharedindex.&lt;SHA-1&gt;. Changes are accumulated in
+$GIT_DIR/index, the split index, while the shared index file contains
+all index entries and stays unchanged.</p></div>
+<div class="paragraph"><p>All changes in the split index are pushed back to the shared index
+file when the number of entries in the split index reaches a level
+specified by the splitIndex.maxPercentChange config variable (see
+<a href="git-config.html">git-config(1)</a>).</p></div>
+<div class="paragraph"><p>Each time a new shared index file is created, the old shared index
+files are deleted if their modification time is older than what is
+specified by the splitIndex.sharedIndexExpire config variable (see
+<a href="git-config.html">git-config(1)</a>).</p></div>
+<div class="paragraph"><p>To avoid deleting a shared index file that is still used, its
+modification time is updated to the current time everytime a new split
+index based on the shared index file is either created or read from.</p></div>
+</div>
+</div>
+<div class="sect1">
<h2 id="_untracked_cache">Untracked cache</h2>
<div class="sectionbody">
<div class="paragraph"><p>This cache is meant to speed up commands that involve determining
@@ -1395,7 +1418,7 @@ ctime for marking files processed) (see <a href="git-config.html">git-config(1)<
<div id="footnotes"><hr /></div>
<div id="footer">
<div id="footer-text">
-Last updated 2016-07-13 14:58:50 PDT
+Last updated 2017-03-17 14:07:06 PDT
</div>
</div>
</body>