<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/builtin, branch v2.50.0</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://git.shady.money/git/atom?h=v2.50.0</id>
<link rel='self' href='https://git.shady.money/git/atom?h=v2.50.0'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/'/>
<updated>2025-06-03T15:55:24Z</updated>
<entry>
<title>Merge branch 'bs/total-ram-bsd'</title>
<updated>2025-06-03T15:55:24Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2025-06-03T15:55:23Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=d9a1e51c76818858d1bc59d1a2a056a1e1df1c41'/>
<id>urn:sha1:d9a1e51c76818858d1bc59d1a2a056a1e1df1c41</id>
<content type='text'>
Update total_ram() functrion on BSD variants.

* bs/total-ram-bsd:
  builtin/gc: correct physical memory detection for OpenBSD / NetBSD
</content>
</entry>
<entry>
<title>builtin/gc: correct physical memory detection for OpenBSD / NetBSD</title>
<updated>2025-06-02T02:01:07Z</updated>
<author>
<name>Brad Smith</name>
<email>brad@comstyle.com</email>
</author>
<published>2025-06-01T08:24:12Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=35c1d592cd11429e402501df3ad68bcd0fb86bef'/>
<id>urn:sha1:35c1d592cd11429e402501df3ad68bcd0fb86bef</id>
<content type='text'>
OpenBSD / NetBSD use HW_PHYSMEM64 to detect the amount of physical
memory in a system. HW_PHYSMEM will not provide the correct amount
on a system with &gt;=4GB of memory.

Signed-off-by: Brad Smith &lt;brad@comstyle.com&gt;
Reviewed-by: Collin Funk &lt;collin.funk1@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>fast-export: --signed-commits is experimental</title>
<updated>2025-05-28T17:30:47Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2025-05-28T17:29:19Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=0b4c6baa70033a221fdac2211548a9a6f78d3e42'/>
<id>urn:sha1:0b4c6baa70033a221fdac2211548a9a6f78d3e42</id>
<content type='text'>
As the design of signature handling is still being discussed, it is
likely that the data stream produced by the code in Git 2.50 would
have to be changed in such a way that is not backward compatible.

Mark the feature as experimental and discourge its use for now.

Also flip the default on the generation side to "strip"; users of
existing versions would not have passed --signed-commits=strip and
will be broken by this change if the default is made to abort, and
will be encouraged by the error message to produce data stream with
future breakage guarantees by passing --signed-commits option.

As we tone down the default behaviour, we no longer need the
FAST_EXPORT_SIGNED_COMMITS_NOABORT environment variable, which was
not discoverable enough.

Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'jt/receive-pack-skip-connectivity-check'</title>
<updated>2025-05-28T14:59:56Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2025-05-28T14:59:56Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=b4847a4477d8cf312bb6e2aef2f3291d13563d36'/>
<id>urn:sha1:b4847a4477d8cf312bb6e2aef2f3291d13563d36</id>
<content type='text'>
"git receive-pack" optionally learns not to care about connectivity
check, which can be useful when the repository arranges to ensure
connectivity by some other means.

* jt/receive-pack-skip-connectivity-check:
  builtin/receive-pack: add option to skip connectivity check
  t5410: test receive-pack connectivity check
</content>
</entry>
<entry>
<title>Merge branch 'js/misc-fixes'</title>
<updated>2025-05-27T20:59:11Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2025-05-27T20:59:10Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=f9cdaa2860e20f3f36595646b7a82082aa772df8'/>
<id>urn:sha1:f9cdaa2860e20f3f36595646b7a82082aa772df8</id>
<content type='text'>
Assorted fixes for issues found with CodeQL.

* js/misc-fixes:
  sequencer: stop pretending that an assignment is a condition
  bundle-uri: avoid using undefined output of `sscanf()`
  commit-graph: avoid using stale stack addresses
  trace2: avoid "futile conditional"
  Avoid redundant conditions
  fetch: avoid unnecessary work when there is no current branch
  has_dir_name(): make code more obvious
  upload-pack: rename `enum` to reflect the operation
  commit-graph: avoid malloc'ing a local variable
  fetch: carefully clear local variable's address after use
  commit: simplify code
</content>
</entry>
<entry>
<title>Merge branch 'ds/sparse-apply-add-p'</title>
<updated>2025-05-27T20:59:09Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2025-05-27T20:59:09Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=6e5fb398d3503ecea3c8ddeeb3c9c8a8c7b6a4ba'/>
<id>urn:sha1:6e5fb398d3503ecea3c8ddeeb3c9c8a8c7b6a4ba</id>
<content type='text'>
"git apply" and "git add -i/-p" code paths no longer unnecessarily
expand sparse-index while working.

* ds/sparse-apply-add-p:
  p2000: add performance test for patch-mode commands
  reset: integrate sparse index with --patch
  git add: make -p/-i aware of sparse index
  apply: integrate with the sparse index
</content>
</entry>
<entry>
<title>Merge branch 'en/merge-tree-check'</title>
<updated>2025-05-27T20:59:08Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2025-05-27T20:59:08Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=f545f401be93241cfefbeed3a25b63045c8fc3a7'/>
<id>urn:sha1:f545f401be93241cfefbeed3a25b63045c8fc3a7</id>
<content type='text'>
"git merge-tree" learned an option to see if it resolves cleanly
without actually creating a result.

* en/merge-tree-check:
  merge-tree: add a new --quiet flag
  merge-ort: add a new mergeability_only option
</content>
</entry>
<entry>
<title>Merge branch 'jk/no-funny-object-types'</title>
<updated>2025-05-27T20:59:08Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2025-05-27T20:59:08Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=17d9dbd3c270aaa33487f6a03d128c47aea6b309'/>
<id>urn:sha1:17d9dbd3c270aaa33487f6a03d128c47aea6b309</id>
<content type='text'>
Support to create a loose object file with unknown object type has
been dropped.

* jk/no-funny-object-types:
  object-file: drop support for writing objects with unknown types
  hash-object: handle --literally with OPT_NEGBIT
  hash-object: merge HASH_* and INDEX_* flags
  hash-object: stop allowing unknown types
  t: add lib-loose.sh
  t/helper: add zlib test-tool
  oid_object_info(): drop type_name strbuf
  fsck: stop using object_info-&gt;type_name strbuf
  oid_object_info_convert(): stop using string for object type
  cat-file: use type enum instead of buffer for -t option
  object-file: drop OBJECT_INFO_ALLOW_UNKNOWN_TYPE flag
  cat-file: make --allow-unknown-type a noop
  object-file.h: fix typo in variable declaration
</content>
</entry>
<entry>
<title>Merge branch 'en/replay-wo-the-repository'</title>
<updated>2025-05-23T22:34:08Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2025-05-23T22:34:08Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=96d127896d1bfa5b1bb88b16951b079e24a2ece2'/>
<id>urn:sha1:96d127896d1bfa5b1bb88b16951b079e24a2ece2</id>
<content type='text'>
The dependency on the_repository variable has been reduced from the
code paths in "git replay".

* en/replay-wo-the-repository:
  replay: replace the_repository with repo parameter passed to cmd_replay ()
</content>
</entry>
<entry>
<title>builtin/receive-pack: add option to skip connectivity check</title>
<updated>2025-05-20T18:43:36Z</updated>
<author>
<name>Justin Tobler</name>
<email>jltobler@gmail.com</email>
</author>
<published>2025-05-20T16:32:18Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=68cb0b5253a05d62adc5cf6c0a60dc58038b546e'/>
<id>urn:sha1:68cb0b5253a05d62adc5cf6c0a60dc58038b546e</id>
<content type='text'>
During git-receive-pack(1), connectivity of the object graph is
validated to ensure that the received packfile does not leave the
repository in a broken state. This is done via git-rev-list(1) and
walking the objects, which can be expensive for large repositories.

Generally, this check is critical to avoid an incomplete received
packfile from corrupting a repository. Server operators may have
additional knowledge though around exactly how Git is being used on the
server-side which can be used to facilitate more efficient connectivity
computation of incoming objects.

For example, if it can be ensured that all objects in a repository are
connected and do not depend on any missing objects, the connectivity of
newly written objects can be checked by walking the object graph
containing only the new objects from the updated tips and identifying
the missing objects which represent the boundary between the new objects
and the repository. These boundary objects can be checked in the
canonical repository to ensure the new objects connect as expected and
thus avoid walking the rest of the object graph.

Git itself cannot make the guarantees required for such an optimization
as it is possible for a repository to contain an unreachable object that
references a missing object without the repository being considered
corrupt.

Introduce the --skip-connectivity-check option for git-receive-pack(1)
which bypasses this connectivity check to give more control to the
server-side. Note that without proper server-side validation of newly
received objects handled outside of Git, usage of this option risks
corrupting a repository.

Signed-off-by: Justin Tobler &lt;jltobler@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
</feed>
