<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/remote.h, 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-03-25T23:09:27Z</updated>
<entry>
<title>remote: allow `guess_remote_head()` to suppress advice</title>
<updated>2025-03-25T23:09:27Z</updated>
<author>
<name>Justin Tobler</name>
<email>jltobler@gmail.com</email>
</author>
<published>2025-03-25T00:51:46Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=d5d284df910b5f03681b480ae061bb1435b3b4b2'/>
<id>urn:sha1:d5d284df910b5f03681b480ae061bb1435b3b4b2</id>
<content type='text'>
The `repo_default_branch_name()` invoked through `guess_remote_head()`
is configured to always display the default branch advice message.

Adapt `guess_remote_head()` to accept flags and convert the `all`
parameter to a flag. Add the `REMOTE_GUESS_HEAD_QUIET` flag to to enable
suppression of advice messages. Call sites are updated accordingly.

Signed-off-by: Justin Tobler &lt;jltobler@gmail.com&gt;
Acked-by: Phillip Wood &lt;phillip.wood@dunelm.org.uk&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'tc/clone-single-revision'</title>
<updated>2025-02-15T01:53:48Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2025-02-15T01:53:47Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=5785d9143bcb3ef19452a83bc2e870ff3d5ed95a'/>
<id>urn:sha1:5785d9143bcb3ef19452a83bc2e870ff3d5ed95a</id>
<content type='text'>
"git clone" learned to make a shallow clone for a single commit
that is not necessarily be at the tip of any branch.

* tc/clone-single-revision:
  builtin/clone: teach git-clone(1) the --revision= option
  parse-options: introduce die_for_incompatible_opt2()
  clone: introduce struct clone_opts in builtin/clone.c
  clone: add tags refspec earlier to fetch refspec
  clone: refactor wanted_peer_refs()
  clone: make it possible to specify --tags
  clone: cut down on global variables in clone.c
</content>
</entry>
<entry>
<title>Merge branch 'ms/remote-valid-remote-name'</title>
<updated>2025-02-12T18:08:54Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2025-02-12T18:08:54Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=0a99ffb4d6645142e68517c59db61b7e58a4f7cc'/>
<id>urn:sha1:0a99ffb4d6645142e68517c59db61b7e58a4f7cc</id>
<content type='text'>
Code shuffling.

* ms/remote-valid-remote-name:
  remote: relocate valid_remote_name
</content>
</entry>
<entry>
<title>Merge branch 'ms/refspec-cleanup'</title>
<updated>2025-02-12T18:08:54Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2025-02-12T18:08:54Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=998c5f0c7554f511bafff587292f986a42fa2944'/>
<id>urn:sha1:998c5f0c7554f511bafff587292f986a42fa2944</id>
<content type='text'>
Code clean-up.  cf. &lt;Z6G-toOJjMmK8iJG@pks.im&gt;

* ms/refspec-cleanup:
  refspec: relocate apply_refspecs and related funtions
  refspec: relocate matching related functions
  remote: rename query_refspecs functions
  refspec: relocate refname_matches_negative_refspec_item
  remote: rename function omit_name_by_refspec
</content>
</entry>
<entry>
<title>clone: introduce struct clone_opts in builtin/clone.c</title>
<updated>2025-02-06T20:23:54Z</updated>
<author>
<name>Toon Claes</name>
<email>toon@iotcl.com</email>
</author>
<published>2025-02-06T06:33:33Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=7a52a8c7d855d3ed779059af160248934ac2c6b0'/>
<id>urn:sha1:7a52a8c7d855d3ed779059af160248934ac2c6b0</id>
<content type='text'>
There is a lot of state stored in global variables in builtin/clone.c.
In the long run we'd like to remove many of those.

Introduce `struct clone_opts` in this file. This struct will be used to
contain all details needed to perform the clone. The struct object can
be thrown around to all the functions that need these details.

The first field we're adding is `wants_head`. In some scenarios
(specifically when both `--single-branch` and `--branch` are given) we
are not interested in `HEAD` on the remote. The field `wants_head` in
`struct clone_opts` will hold this information. We could have put
`option_branch` and `option_single_branch` into that struct instead, but
in a following commit we'll be using `wants_head` as well.

Signed-off-by: Toon Claes &lt;toon@iotcl.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>remote: relocate valid_remote_name</title>
<updated>2025-02-04T17:55:59Z</updated>
<author>
<name>Meet Soni</name>
<email>meetsoni3017@gmail.com</email>
</author>
<published>2025-02-04T14:28:52Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=f21ea69d945f958704f2fe143c2638ecae6e0d12'/>
<id>urn:sha1:f21ea69d945f958704f2fe143c2638ecae6e0d12</id>
<content type='text'>
Move the `valid_remote_name()` function from the refspec subsystem to
the remote subsystem to better align with the separation of concerns.

Signed-off-by: Meet Soni &lt;meetsoni3017@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>refspec: relocate apply_refspecs and related funtions</title>
<updated>2025-02-04T17:51:42Z</updated>
<author>
<name>Meet Soni</name>
<email>meetsoni3017@gmail.com</email>
</author>
<published>2025-02-04T04:05:58Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=d549b6c9ff44d3ccb32b9bfe1816d3cfb1d7052a'/>
<id>urn:sha1:d549b6c9ff44d3ccb32b9bfe1816d3cfb1d7052a</id>
<content type='text'>
Move the functions `apply_refspecs()` and `apply_negative_refspecs()`
from `remote.c` to `refspec.c`. These functions focus on applying
refspecs, so centralizing them in `refspec.c` improves code organization
by keeping refspec-related logic in one place.

Signed-off-by: Meet Soni &lt;meetsoni3017@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>remote: rename query_refspecs functions</title>
<updated>2025-02-04T17:51:41Z</updated>
<author>
<name>Meet Soni</name>
<email>meetsoni3017@gmail.com</email>
</author>
<published>2025-02-04T04:05:56Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=be0905fed1cdc9a2269f19569c518f00d54d2dbe'/>
<id>urn:sha1:be0905fed1cdc9a2269f19569c518f00d54d2dbe</id>
<content type='text'>
Rename functions related to handling refspecs in preparation for their
move from `remote.c` to `refspec.c`. Update their names to better
reflect their intent:

    - `query_refspecs()` -&gt; `refspec_find_match()` for clarity, as it
      finds a single matching refspec.

    - `query_refspecs_multiple()` -&gt; `refspec_find_all_matches()` to
      better reflect that it collects all matching refspecs instead of
      returning just the first match.

    - `query_matches_negative_refspec()` -&gt;
      `refspec_find_negative_match()` for consistency with the
      updated naming convention, even though this static function
      didn't strictly require renaming.

Signed-off-by: Meet Soni &lt;meetsoni3017@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>remote: rename function omit_name_by_refspec</title>
<updated>2025-02-04T17:51:41Z</updated>
<author>
<name>Meet Soni</name>
<email>meetsoni3017@gmail.com</email>
</author>
<published>2025-02-04T04:05:54Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=e4f6ab008522c5ad386485720770b8d03b4fb880'/>
<id>urn:sha1:e4f6ab008522c5ad386485720770b8d03b4fb880</id>
<content type='text'>
Rename the function `omit_name_by_refspec()` to
`refname_matches_negative_refspec_item()` to provide clearer intent.
The previous function name was vague and did not accurately describe its
purpose. By using `refname_matches_negative_refspec_item`, make the
function's purpose more intuitive, clarifying that it checks if a
reference name matches any negative refspec.

Rename function parameters for consistency with existing naming
conventions. Use `refname` instead of `name` to align with terminology
in `refs.h`.

Remove the redundant doc comment since the function name is now
self-explanatory.

Signed-off-by: Meet Soni &lt;meetsoni3017@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'ps/3.0-remote-deprecation'</title>
<updated>2025-02-03T18:23:33Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2025-02-03T18:23:33Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=803b5acaa7cb979b5d623270af18d6d8354fce9b'/>
<id>urn:sha1:803b5acaa7cb979b5d623270af18d6d8354fce9b</id>
<content type='text'>
Following the procedure we established to introduce breaking
changes for Git 3.0, allow an early opt-in for removing support of
$GIT_DIR/branches/ and $GIT_DIR/remotes/ directories to configure
remotes.

* ps/3.0-remote-deprecation:
  remote: announce removal of "branches/" and "remotes/"
  builtin/pack-redundant: remove subcommand with breaking changes
  ci: repurpose "linux-gcc" job for deprecations
  ci: merge linux-gcc-default into linux-gcc
  Makefile: wire up build option for deprecated features
</content>
</entry>
</feed>
