<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git, branch jch</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://git.shady.money/git/atom?h=jch</id>
<link rel='self' href='https://git.shady.money/git/atom?h=jch'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/'/>
<updated>2026-05-17T13:58:51Z</updated>
<entry>
<title>Merge branch 'kk/limit-list-optim' into jch</title>
<updated>2026-05-17T13:58:51Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2026-05-17T13:58:51Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=403180414760edf5d97fdba22061cca68641dd76'/>
<id>urn:sha1:403180414760edf5d97fdba22061cca68641dd76</id>
<content type='text'>
The limit_list() function that is one of the core part of the
revision traversal infrastructure has been optimized by replacing
its use of linear list with priority queue.

* kk/limit-list-optim:
  revision: use priority queue in limit_list()
</content>
</entry>
<entry>
<title>Merge branch 'ob/more-repo-config-values' into jch</title>
<updated>2026-05-17T13:58:51Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2026-05-17T13:58:51Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=eaa7468ed3ebfa33d9cec5e4167d704eb14c4280'/>
<id>urn:sha1:eaa7468ed3ebfa33d9cec5e4167d704eb14c4280</id>
<content type='text'>
* ob/more-repo-config-values:
  env: move "warn_on_object_refname_ambiguity" into `struct repo_config_values`
  env: move "sparse_expect_files_outside_of_patterns" into `repo_config_values`
  env: move "core_sparse_checkout_cone" into `struct repo_config_values`
  environment: move "precomposed_unicode" into `struct repo_config_values`
  environment: move "pack_compression_level" into `struct repo_config_values`
  environment: move `zlib_compression_level` into `struct repo_config_values`
  environment: move "check_stat" into `struct repo_config_values`
  environment: move "trust_ctime" into `struct repo_config_values`
</content>
</entry>
<entry>
<title>Merge branch 'en/ort-harden-against-corrupt-trees' into jch</title>
<updated>2026-05-17T13:58:50Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2026-05-17T13:58:50Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=fc35bafc6f9a423a0008d647b43bc8b53b15b2cb'/>
<id>urn:sha1:fc35bafc6f9a423a0008d647b43bc8b53b15b2cb</id>
<content type='text'>
"ort" merge backend handles merging corrupt trees better by
aborting when it should.

* en/ort-harden-against-corrupt-trees:
  cache-tree: fix verify_cache() to catch non-adjacent D/F conflicts
  merge-ort: abort merge when trees have duplicate entries
  merge-ort: free diff pairs queue in clear_or_reinit_internal_opts()
  merge-ort: drop unnecessary show_all_errors from collect_merge_info()
  merge-ort: propagate callback errors from traverse_trees_wrapper()
</content>
</entry>
<entry>
<title>Merge branch 'kh/doc-trailers' into jch</title>
<updated>2026-05-17T13:58:50Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2026-05-17T13:58:50Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=91b68bbb3be67da96b541eb779dd47de02c71595'/>
<id>urn:sha1:91b68bbb3be67da96b541eb779dd47de02c71595</id>
<content type='text'>
Documentation updates.

* kh/doc-trailers:
  doc: interpret-trailers: document comment line treatment
  doc: interpret-trailers: commit to “trailer block” term
  doc: interpret-trailers: add key format example
  doc: interpret-trailers: explain key format
  doc: interpret-trailers: explain the format after the intro
  doc: interpret-trailers: not just for commit messages
  doc: interpret-trailers: use “metadata” in Name as well
  doc: interpret-trailers: replace “lines” with “metadata”
  doc: interpret-trailers: stop fixating on RFC 822
</content>
</entry>
<entry>
<title>Merge branch 'ps/setup-wo-the-repository' into jch</title>
<updated>2026-05-17T13:58:50Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2026-05-17T13:58:49Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=1074d974daeb9f9e7e04d77a9c00715242ca80a0'/>
<id>urn:sha1:1074d974daeb9f9e7e04d77a9c00715242ca80a0</id>
<content type='text'>
Many uses of the_repository has been updated to use a more
appropriate struct repository instance in setup.c codepath.

* ps/setup-wo-the-repository:
  setup: stop using `the_repository` in `init_db()`
  setup: stop using `the_repository` in `create_reference_database()`
  setup: stop using `the_repository` in `initialize_repository_version()`
  setup: stop using `the_repository` in `check_repository_format()`
  setup: stop using `the_repository` in `upgrade_repository_format()`
  setup: stop using `the_repository` in `setup_git_directory()`
  setup: stop using `the_repository` in `setup_git_directory_gently()`
  setup: stop using `the_repository` in `setup_git_env()`
  setup: stop using `the_repository` in `set_git_work_tree()`
  setup: stop using `the_repository` in `setup_work_tree()`
  setup: stop using `the_repository` in `enter_repo()`
  setup: stop using `the_repository` in `verify_non_filename()`
  setup: stop using `the_repository` in `verify_filename()`
  setup: stop using `the_repository` in `path_inside_repo()`
  setup: stop using `the_repository` in `prefix_path()`
  setup: stop using `the_repository` in `is_inside_git_dir()`
  setup: stop using `the_repository` in `is_inside_worktree()`
  setup: replace use of `the_repository` in static functions
</content>
</entry>
<entry>
<title>Merge branch 'sa/cat-file-batch-mailmap-switch' into jch</title>
<updated>2026-05-17T13:58:49Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2026-05-17T13:58:49Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=503e5b6fb1142dcd5d8e2c0cc89de9662122168d'/>
<id>urn:sha1:503e5b6fb1142dcd5d8e2c0cc89de9662122168d</id>
<content type='text'>
"git cat-file --batch" learns an in-line command "mailmap"
that lets the user toggle use of mailmap.

* sa/cat-file-batch-mailmap-switch:
  cat-file: add mailmap subcommand to --batch-command
</content>
</entry>
<entry>
<title>Merge branch 'ps/odb-in-memory' into jch</title>
<updated>2026-05-17T13:58:49Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2026-05-17T13:58:48Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=bde06d0ab28301b38fee4ec67d9ae2a0b7d08f25'/>
<id>urn:sha1:bde06d0ab28301b38fee4ec67d9ae2a0b7d08f25</id>
<content type='text'>
Add a new odb "in-memory" source that is meant to only hold
tentative objects (like the virtual blob object that represents the
working tree file used by "git blame").

* ps/odb-in-memory:
  t/unit-tests: add tests for the in-memory object source
  odb: generic in-memory source
  odb/source-inmemory: stub out remaining functions
  odb/source-inmemory: implement `freshen_object()` callback
  odb/source-inmemory: implement `count_objects()` callback
  odb/source-inmemory: implement `find_abbrev_len()` callback
  odb/source-inmemory: implement `for_each_object()` callback
  odb/source-inmemory: convert to use oidtree
  oidtree: add ability to store data
  cbtree: allow using arbitrary wrapper structures for nodes
  odb/source-inmemory: implement `write_object_stream()` callback
  odb/source-inmemory: implement `write_object()` callback
  odb/source-inmemory: implement `read_object_stream()` callback
  odb/source-inmemory: implement `read_object_info()` callback
  odb: fix unnecessary call to `find_cached_object()`
  odb/source-inmemory: implement `free()` callback
  odb: introduce "in-memory" source
</content>
</entry>
<entry>
<title>Merge branch 'jt/odb-transaction-write' into jch</title>
<updated>2026-05-17T13:58:48Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2026-05-17T13:58:48Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=9465e7902b82b1a46a41eef3231906fb437c9228'/>
<id>urn:sha1:9465e7902b82b1a46a41eef3231906fb437c9228</id>
<content type='text'>
ODB transaction interface is being reworked to explicitly handle
object writes.

* jt/odb-transaction-write:
  odb/transaction: make `write_object_stream()` pluggable
  object-file: generalize packfile writes to use odb_write_stream
  object-file: avoid fd seekback by checking object size upfront
  object-file: remove flags from transaction packfile writes
  odb: update `struct odb_write_stream` read() callback
  odb/transaction: use pluggable `begin_transaction()`
  odb: split `struct odb_transaction` into separate header
</content>
</entry>
<entry>
<title>Merge branch 'jc/neuter-sideband-post-3.0' into jch</title>
<updated>2026-05-17T13:58:48Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2026-05-17T13:58:48Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=b19fcb44c63d716453a4311ff2877e7b17754a90'/>
<id>urn:sha1:b19fcb44c63d716453a4311ff2877e7b17754a90</id>
<content type='text'>
The final step, split from earlier attempt by Dscho, to loosen the
sideband restriction for now and tighten later at Git v3.0 boundary.

* jc/neuter-sideband-post-3.0:
  sideband: delay sanitizing by default to Git v3.0
</content>
</entry>
<entry>
<title>Merge branch 'ps/shift-root-in-graph' into jch</title>
<updated>2026-05-17T13:58:47Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2026-05-17T13:58:47Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=a392bb1d7b186558f72d9559581afc3212f639cf'/>
<id>urn:sha1:a392bb1d7b186558f72d9559581afc3212f639cf</id>
<content type='text'>
In a history with more than one root commit, "git log --graph
--oneline" stuffed an unrelated commit immediately below a root
commit, which has been corrected by making the spot below a root
unavailable.

* ps/shift-root-in-graph:
  graph: add indentation for commits preceded by a parentless commit
</content>
</entry>
</feed>
