<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/builtin, 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 '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 '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 '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 'tb/incremental-midx-part-3.3' 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=aff24012b8ebc2a2672f8b43f44fa7d2197ac261'/>
<id>urn:sha1:aff24012b8ebc2a2672f8b43f44fa7d2197ac261</id>
<content type='text'>
The repacking code has been refactored and compaction of MIDX layers
have been implemented, and incremental strategy that does not require
all-into-one repacking has been introduced.

* tb/incremental-midx-part-3.3:
  repack: allow `--write-midx=incremental` without `--geometric`
  repack: introduce `--write-midx=incremental`
  repack: implement incremental MIDX repacking
  packfile: ensure `close_pack_revindex()` frees in-memory revindex
  builtin/repack.c: convert `--write-midx` to an `OPT_CALLBACK`
  repack-geometry: prepare for incremental MIDX repacking
  repack-midx: extract `repack_fill_midx_stdin_packs()`
  repack-midx: factor out `repack_prepare_midx_command()`
  midx: expose `midx_layer_contains_pack()`
  repack: track the ODB source via existing_packs
  midx: support custom `--base` for incremental MIDX writes
  midx: introduce `--no-write-chain-file` for incremental MIDX writes
  midx: use `strvec` for `keep_hashes`
  midx: build `keep_hashes` array in order
  midx: use `strset` for retained MIDX files
  midx-write: handle noop writes when converting incremental chains
</content>
</entry>
<entry>
<title>Merge branch 'kk/paint-down-to-common-optim' into jch</title>
<updated>2026-05-17T13:58:45Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2026-05-17T13:58:45Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=b64e24a3279dc0f639c6838fe9164accaf3fd3cf'/>
<id>urn:sha1:b64e24a3279dc0f639c6838fe9164accaf3fd3cf</id>
<content type='text'>
"git merge-base" optimization.

* kk/paint-down-to-common-optim:
  commit-reach: early exit paint_down_to_common for single merge-base
  commit-reach: introduce merge_base_flags enum
</content>
</entry>
<entry>
<title>Merge branch 'mm/git-url-parse' into jch</title>
<updated>2026-05-17T13:58:44Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2026-05-17T13:58:44Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=cea30558198aa6622d25c8d835ab00f3176cca4e'/>
<id>urn:sha1:cea30558198aa6622d25c8d835ab00f3176cca4e</id>
<content type='text'>
The internal URL parsing logic has been made accessible via a new
subcommand "git url-parse".

* mm/git-url-parse:
  t9904: add tests for the new url-parse builtin
  doc: describe the url-parse builtin
  builtin: create url-parse command
  urlmatch: define url_parse function
  url: return URL_SCHEME_UNKNOWN instead of dying
  url: move scheme detection to URL header/source
  url: move url_is_local_not_ssh to url.h
  connect: rename enum protocol to url_scheme
</content>
</entry>
<entry>
<title>Merge branch 'kn/refs-generic-helpers' into jch</title>
<updated>2026-05-17T13:58:43Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2026-05-17T13:58:43Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=65fab109594dbca83910101f669d09cf63d108d2'/>
<id>urn:sha1:65fab109594dbca83910101f669d09cf63d108d2</id>
<content type='text'>
Refactor service routines in the ref subsystem backends.

* kn/refs-generic-helpers:
  refs: use peeled tag values in reference backends
  refs: add peeled object ID to the `ref_update` struct
  refs: move object parsing to the generic layer
  update-ref: handle rejections while adding updates
  update-ref: move `print_rejected_refs()` up
  refs: return `ref_transaction_error` from `ref_transaction_update()`
  refs: extract out reflog config to generic layer
  refs: introduce `ref_store_init_options`
  refs: remove unused typedef 'ref_transaction_commit_fn'
</content>
</entry>
<entry>
<title>Merge branch 'sb/unpack-index-pack-buffer-resize' into jch</title>
<updated>2026-05-17T13:58:43Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2026-05-17T13:58:43Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=690bf9c52da754f551ea48c55fafd90b64b70e62'/>
<id>urn:sha1:690bf9c52da754f551ea48c55fafd90b64b70e62</id>
<content type='text'>
Use a larger buffer size in the code paths to ingest pack stream.

* sb/unpack-index-pack-buffer-resize:
  index-pack, unpack-objects: increase input buffer from 4 KiB to 128 KiB
</content>
</entry>
<entry>
<title>Merge branch 'ps/history-fixup' into jch</title>
<updated>2026-05-17T13:58:42Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2026-05-17T13:58:42Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=930a85f0e685b29b012b575f65679e73b6c49eca'/>
<id>urn:sha1:930a85f0e685b29b012b575f65679e73b6c49eca</id>
<content type='text'>
"git history" learned "fixup" command.

* ps/history-fixup:
  builtin/history: introduce "fixup" subcommand
  builtin/history: generalize function to commit trees
  replay: allow callers to control what happens with empty commits
</content>
</entry>
</feed>
