<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/config.c, branch v2.21.3</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://git.shady.money/git/atom?h=v2.21.3</id>
<link rel='self' href='https://git.shady.money/git/atom?h=v2.21.3'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/'/>
<updated>2019-01-24T20:35:44Z</updated>
<entry>
<title>config: drop unused parameter from maybe_remove_section()</title>
<updated>2019-01-24T20:35:44Z</updated>
<author>
<name>Jeff King</name>
<email>peff@peff.net</email>
</author>
<published>2019-01-24T13:12:32Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=a263ea84d1da2c34ed1325809b8a1f62ccffde8c'/>
<id>urn:sha1:a263ea84d1da2c34ed1325809b8a1f62ccffde8c</id>
<content type='text'>
We don't need the contents buffer to drop a section; the parse
information in the config_store_data parameter is enough for our logic.

Signed-off-by: Jeff King &lt;peff@peff.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>index: make index.threads=true enable ieot and eoie</title>
<updated>2018-11-21T07:46:54Z</updated>
<author>
<name>Jonathan Nieder</name>
<email>jrnieder@gmail.com</email>
</author>
<published>2018-11-20T06:14:26Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=2a9dedef2ef76916be4a314a7e739f253eaf05db'/>
<id>urn:sha1:2a9dedef2ef76916be4a314a7e739f253eaf05db</id>
<content type='text'>
If a user explicitly sets

	[index]
		threads = true

to read the index using multiple threads, ensure that index writes
include the offset table by default to make that possible.  This
ensures that the user's intent of turning on threading is respected.

In other words, permit the following configurations:

- index.threads and index.recordOffsetTable unspecified: do not write
  the offset table yet (to avoid alarming the user with "ignoring IEOT
  extension" messages when an older version of Git accesses the
  repository) but do make use of multiple threads to read the index if
  the supporting offset table is present.

  This can also be requested explicitly by setting index.threads=true,
  0, or &gt;1 and index.recordOffsetTable=false.

- index.threads=false or 1: do not write the offset table, and do not
  make use of the offset table.

  One can set index.recordOffsetTable=false as well, to be more
  explicit.

- index.threads=true, 0, or &gt;1 and index.recordOffsetTable unspecified:
  write the offset table and make use of threads at read time.

  This can also be requested by setting index.threads=true, 0, &gt;1, or
  unspecified and index.recordOffsetTable=true.

Fortunately the complication is temporary: once most Git installations
have upgraded to a version with support for the IEOT and EOIE
extensions, we can flip the defaults for index.recordEndOfIndexEntries
and index.recordOffsetTable to true and eliminate the settings.

Helped-by: Ben Peart &lt;benpeart@microsoft.com&gt;
Signed-off-by: Jonathan Nieder &lt;jrnieder@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>config: report a bug if git_dir exists without commondir</title>
<updated>2018-11-16T02:54:01Z</updated>
<author>
<name>Johannes Schindelin</name>
<email>johannes.schindelin@gmx.de</email>
</author>
<published>2018-11-14T13:59:02Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=44004872c891ae1b06cd3aff9c597828558ddedb'/>
<id>urn:sha1:44004872c891ae1b06cd3aff9c597828558ddedb</id>
<content type='text'>
This did happen at some stage, and was fixed relatively quickly. Make
sure that we detect very quickly, too, should that happen again.

Signed-off-by: Johannes Schindelin &lt;johannes.schindelin@gmx.de&gt;
Reviewed-by: Jeff King &lt;peff@peff.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'js/mingw-perl5lib'</title>
<updated>2018-11-13T13:37:20Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2018-11-13T13:37:20Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=6c268fdda9dcc421e2bee1ce76496d3e9f96397f'/>
<id>urn:sha1:6c268fdda9dcc421e2bee1ce76496d3e9f96397f</id>
<content type='text'>
Windows fix.

* js/mingw-perl5lib:
  mingw: unset PERL5LIB by default
  config: move Windows-specific config settings into compat/mingw.c
  config: allow for platform-specific core.* config settings
  config: rename `dummy` parameter to `cb` in git_default_config()
</content>
</entry>
<entry>
<title>config: move Windows-specific config settings into compat/mingw.c</title>
<updated>2018-10-31T03:46:27Z</updated>
<author>
<name>Johannes Schindelin</name>
<email>johannes.schindelin@gmx.de</email>
</author>
<published>2018-10-30T18:40:06Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=bdfbb0ea932d1ec479474cc7928ec9d47ea89e7b'/>
<id>urn:sha1:bdfbb0ea932d1ec479474cc7928ec9d47ea89e7b</id>
<content type='text'>
Signed-off-by: Johannes Schindelin &lt;johannes.schindelin@gmx.de&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>config: allow for platform-specific core.* config settings</title>
<updated>2018-10-31T03:46:21Z</updated>
<author>
<name>Johannes Schindelin</name>
<email>johannes.schindelin@gmx.de</email>
</author>
<published>2018-10-30T18:40:04Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=70fc5793dfdf8ba8586ca130674f6896eb3eb37a'/>
<id>urn:sha1:70fc5793dfdf8ba8586ca130674f6896eb3eb37a</id>
<content type='text'>
In the Git for Windows project, we have ample precendent for config
settings that apply to Windows, and to Windows only.

Let's formalize this concept by introducing a platform_core_config()
function that can be #define'd in a platform-specific manner.

This will allow us to contain platform-specific code better, as the
corresponding variables no longer need to be exported so that they can
be defined in environment.c and be set in config.c

Signed-off-by: Johannes Schindelin &lt;johannes.schindelin@gmx.de&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>config: rename `dummy` parameter to `cb` in git_default_config()</title>
<updated>2018-10-31T03:45:30Z</updated>
<author>
<name>Johannes Schindelin</name>
<email>johannes.schindelin@gmx.de</email>
</author>
<published>2018-10-30T18:40:03Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=409670f34ed5a2bc4f508f3aee9f809922b339dc'/>
<id>urn:sha1:409670f34ed5a2bc4f508f3aee9f809922b339dc</id>
<content type='text'>
This is the convention elsewhere (and prepares for the case where we may
need to pass callback data).

Signed-off-by: Johannes Schindelin &lt;johannes.schindelin@gmx.de&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>worktree: add per-worktree config files</title>
<updated>2018-10-22T04:17:04Z</updated>
<author>
<name>Nguyễn Thái Ngọc Duy</name>
<email>pclouds@gmail.com</email>
</author>
<published>2018-10-21T14:02:28Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=58b284a2e9123588eedc8c5ee17e8b069d9454f8'/>
<id>urn:sha1:58b284a2e9123588eedc8c5ee17e8b069d9454f8</id>
<content type='text'>
A new repo extension is added, worktreeConfig. When it is present:

 - Repository config reading by default includes $GIT_DIR/config _and_
   $GIT_DIR/config.worktree. "config" file remains shared in multiple
   worktree setup.

 - The special treatment for core.bare and core.worktree, to stay
   effective only in main worktree, is gone. These config settings are
   supposed to be in config.worktree.

This extension is most useful in multiple worktree setup because you
now have an option to store per-worktree config (which is either
.git/config.worktree for main worktree, or
.git/worktrees/xx/config.worktree for linked ones).

This extension can be used in single worktree mode, even though it's
pretty much useless (but this can happen after you remove all linked
worktrees and move back to single worktree).

"git config" reads from both "config" and "config.worktree" by default
(i.e. without either --user, --file...) when this extension is
present. Default writes still go to "config", not "config.worktree". A
new option --worktree is added for that (*).

Since a new repo extension is introduced, existing git binaries should
refuse to access to the repo (both from main and linked worktrees). So
they will not misread the config file (i.e. skip the config.worktree
part). They may still accidentally write to the config file anyway if
they use with "git config --file &lt;path&gt;".

This design places a bet on the assumption that the majority of config
variables are shared so it is the default mode. A safer move would be
default writes go to per-worktree file, so that accidental changes are
isolated.

(*) "git config --worktree" points back to "config" file when this
    extension is not present and there is only one worktree so that it
    works in any both single and multiple worktree setups.

Signed-off-by: Nguyễn Thái Ngọc Duy &lt;pclouds@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'bp/read-cache-parallel'</title>
<updated>2018-10-19T04:34:03Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2018-10-19T04:34:03Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=e27bfaaee37c4c9d7e94f945f82c3e452d2dc071'/>
<id>urn:sha1:e27bfaaee37c4c9d7e94f945f82c3e452d2dc071</id>
<content type='text'>
A new extension to the index file has been introduced, which allows
the file to be read in parallel.

* bp/read-cache-parallel:
  read-cache: load cache entries on worker threads
  ieot: add Index Entry Offset Table (IEOT) extension
  read-cache: load cache extensions on a worker thread
  config: add new index.threads config setting
  eoie: add End of Index Entry (EOIE) extension
  read-cache: clean up casting and byte decoding
  read-cache.c: optimize reading index format v4
</content>
</entry>
<entry>
<title>config: add new index.threads config setting</title>
<updated>2018-10-11T06:32:48Z</updated>
<author>
<name>Ben Peart</name>
<email>benpeart@microsoft.com</email>
</author>
<published>2018-10-10T15:59:35Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=c780b9cfe8d79331ed9797e328b1bf80666c4ac2'/>
<id>urn:sha1:c780b9cfe8d79331ed9797e328b1bf80666c4ac2</id>
<content type='text'>
Add support for a new index.threads config setting which will be used to
control the threading code in do_read_index().  A value of 0 will tell the
index code to automatically determine the correct number of threads to use.
A value of 1 will make the code single threaded.  A value greater than 1
will set the maximum number of threads to use.

For testing purposes, this setting can be overwritten by setting the
GIT_TEST_INDEX_THREADS=&lt;n&gt; environment variable to a value greater than 0.

Signed-off-by: Ben Peart &lt;benpeart@microsoft.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
</feed>
