<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/remote.h, branch v2.20.2</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://git.shady.money/git/atom?h=v2.20.2</id>
<link rel='self' href='https://git.shady.money/git/atom?h=v2.20.2'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/'/>
<updated>2018-09-17T20:53:52Z</updated>
<entry>
<title>Merge branch 'ds/reachable'</title>
<updated>2018-09-17T20:53:52Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2018-09-17T20:53:52Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=1b7a91da71d42759dfb83fa3a17be54ad01f0132'/>
<id>urn:sha1:1b7a91da71d42759dfb83fa3a17be54ad01f0132</id>
<content type='text'>
The code for computing history reachability has been shuffled,
obtained a bunch of new tests to cover them, and then being
improved.

* ds/reachable:
  commit-reach: correct accidental #include of C file
  commit-reach: use can_all_from_reach
  commit-reach: make can_all_from_reach... linear
  commit-reach: replace ref_newer logic
  test-reach: test commit_contains
  test-reach: test can_all_from_reach_with_flags
  test-reach: test reduce_heads
  test-reach: test get_merge_bases_many
  test-reach: test is_descendant_of
  test-reach: test in_merge_bases
  test-reach: create new test tool for ref_newer
  commit-reach: move can_all_from_reach_with_flags
  upload-pack: generalize commit date cutoff
  upload-pack: refactor ok_to_give_up()
  upload-pack: make reachable() more generic
  commit-reach: move commit_contains from ref-filter
  commit-reach: move ref_newer from remote.c
  commit.h: remove method declarations
  commit-reach: move walk methods from commit.c
</content>
</entry>
<entry>
<title>Add missing includes and forward declarations</title>
<updated>2018-08-15T18:52:09Z</updated>
<author>
<name>Elijah Newren</name>
<email>newren@gmail.com</email>
</author>
<published>2018-08-15T17:54:05Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=ef3ca95475ce467ae883cc8175ed40e6f7d27800'/>
<id>urn:sha1:ef3ca95475ce467ae883cc8175ed40e6f7d27800</id>
<content type='text'>
I looped over the toplevel header files, creating a temporary two-line C
program for each consisting of
  #include "git-compat-util.h"
  #include $HEADER
This patch is the result of manually fixing errors in compiling those
tiny programs.

Signed-off-by: Elijah Newren &lt;newren@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>commit-reach: move ref_newer from remote.c</title>
<updated>2018-07-20T22:38:54Z</updated>
<author>
<name>Derrick Stolee</name>
<email>dstolee@microsoft.com</email>
</author>
<published>2018-07-20T16:33:06Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=1d614d41e5fc030bc2f2799a58791aa912f78378'/>
<id>urn:sha1:1d614d41e5fc030bc2f2799a58791aa912f78378</id>
<content type='text'>
There are several commit walks in the codebase. Group them together into
a new commit-reach.c file and corresponding header. After we group these
walks into one place, we can reduce duplicate logic by calling
equivalent methods.

The ref_newer() method is used by 'git push -f' to check if a force-push
is necessary. By making the method public, we make it possible to test
the method directly without setting up an envieronment where a 'git
push' call makes sense.

Signed-off-by: Derrick Stolee &lt;dstolee@microsoft.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>fetch-pack: implement ref-in-want</title>
<updated>2018-06-28T16:33:30Z</updated>
<author>
<name>Brandon Williams</name>
<email>bmwill@google.com</email>
</author>
<published>2018-06-27T22:30:23Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=733020517a1baa6f4f76bb7bf48d8d8d14eecd6c'/>
<id>urn:sha1:733020517a1baa6f4f76bb7bf48d8d8d14eecd6c</id>
<content type='text'>
Implement ref-in-want on the client side so that when a server supports
the "ref-in-want" feature, a client will send "want-ref" lines for each
reference the client wants to fetch.  This feature allows clients to
tolerate inconsistencies that exist when a remote repository's refs
change during the course of negotiation.

This allows a client to request to request a particular ref without
specifying the OID of the ref.  This means that instead of hitting an
error when a ref no longer points at the OID it did at the beginning of
negotiation, negotiation can continue and the value of that ref will be
sent at the termination of negotiation, just before a packfile is sent.

More information on the ref-in-want feature can be found in
Documentation/technical/protocol-v2.txt.

Signed-off-by: Brandon Williams &lt;bmwill@google.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'bw/ref-prefix-for-configured-refspec'</title>
<updated>2018-05-30T12:51:26Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2018-05-30T12:51:26Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=e12cbeaa624b82bc00d585bb24c8034fbf5f9de2'/>
<id>urn:sha1:e12cbeaa624b82bc00d585bb24c8034fbf5f9de2</id>
<content type='text'>
"git fetch $there $refspec" that talks over protocol v2 can take
advantage of server-side ref filtering; the code has been extended
so that this mechanism triggers also when fetching with configured
refspec.

* bw/ref-prefix-for-configured-refspec: (38 commits)
  fetch: generate ref-prefixes when using a configured refspec
  refspec: consolidate ref-prefix generation logic
  submodule: convert push_unpushed_submodules to take a struct refspec
  remote: convert check_push_refs to take a struct refspec
  remote: convert match_push_refs to take a struct refspec
  http-push: store refspecs in a struct refspec
  transport: remove transport_verify_remote_names
  send-pack: store refspecs in a struct refspec
  transport: convert transport_push to take a struct refspec
  push: convert to use struct refspec
  push: check for errors earlier
  remote: convert match_explicit_refs to take a struct refspec
  remote: convert get_ref_match to take a struct refspec
  remote: convert query_refspecs to take a struct refspec
  remote: convert apply_refspecs to take a struct refspec
  remote: convert get_stale_heads to take a struct refspec
  fetch: convert prune_refs to take a struct refspec
  fetch: convert get_ref_map to take a struct refspec
  fetch: convert do_fetch to take a struct refspec
  refspec: remove the deprecated functions
  ...
</content>
</entry>
<entry>
<title>remote: convert check_push_refs to take a struct refspec</title>
<updated>2018-05-17T21:19:44Z</updated>
<author>
<name>Brandon Williams</name>
<email>bmwill@google.com</email>
</author>
<published>2018-05-16T22:58:22Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=afb1aed403de404c1e09fae5b8028f6b8f6982d3'/>
<id>urn:sha1:afb1aed403de404c1e09fae5b8028f6b8f6982d3</id>
<content type='text'>
Convert 'check_push_refs()' to take a 'struct refspec' as a parameter
instead of an array of 'const char *'.

Signed-off-by: Brandon Williams &lt;bmwill@google.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>remote: convert match_push_refs to take a struct refspec</title>
<updated>2018-05-17T21:19:44Z</updated>
<author>
<name>Brandon Williams</name>
<email>bmwill@google.com</email>
</author>
<published>2018-05-16T22:58:21Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=5c7ec8462d8706f9731f0d54ea3fdfe810d60a88'/>
<id>urn:sha1:5c7ec8462d8706f9731f0d54ea3fdfe810d60a88</id>
<content type='text'>
Convert 'match_push_refs()' to take a 'struct refspec' as a parameter
instead of an array of 'const char *'.

Signed-off-by: Brandon Williams &lt;bmwill@google.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>remote: convert query_refspecs to take a struct refspec</title>
<updated>2018-05-17T21:19:43Z</updated>
<author>
<name>Brandon Williams</name>
<email>bmwill@google.com</email>
</author>
<published>2018-05-16T22:58:12Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=86baf82521de70184182972b96bbf1859f097366'/>
<id>urn:sha1:86baf82521de70184182972b96bbf1859f097366</id>
<content type='text'>
Convert 'query_refspecs()' to take a 'struct refspec' as a parameter instead
of a list of 'struct refspec_item'.

Signed-off-by: Brandon Williams &lt;bmwill@google.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>remote: convert apply_refspecs to take a struct refspec</title>
<updated>2018-05-17T21:19:43Z</updated>
<author>
<name>Brandon Williams</name>
<email>bmwill@google.com</email>
</author>
<published>2018-05-16T22:58:11Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=d000414e26654f6f13526e4b83c648d7119586f0'/>
<id>urn:sha1:d000414e26654f6f13526e4b83c648d7119586f0</id>
<content type='text'>
Convert 'apply_refspecs()' to take a 'struct refspec' as a parameter instead
of a list of 'struct refspec_item'.

Signed-off-by: Brandon Williams &lt;bmwill@google.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>remote: convert get_stale_heads to take a struct refspec</title>
<updated>2018-05-17T21:19:43Z</updated>
<author>
<name>Brandon Williams</name>
<email>bmwill@google.com</email>
</author>
<published>2018-05-16T22:58:10Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=a2ac50cbfd232b5739bafaf6bfdb80c13633b732'/>
<id>urn:sha1:a2ac50cbfd232b5739bafaf6bfdb80c13633b732</id>
<content type='text'>
Convert 'get_stale_heads()' to take a 'struct refspec' as a parameter instead
of a list of 'struct refspec_item'.

Signed-off-by: Brandon Williams &lt;bmwill@google.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
</feed>
