Signed-off-by: Jonathan Tan
---
builtin/commit-graph.c | 2 ++
commit-graph.c | 24 ++--
commit-graph.h | 2 ++
3 files changed, 18 insertions(+), 10 deletions(-)
diff --git a/builtin/commit-graph.c b/builtin/commit-graph.c
index 37420ae0fd..9c2d55221c
Signed-off-by: Jonathan Tan
---
object-store.h | 3 +++
1 file changed, 3 insertions(+)
diff --git a/object-store.h b/object-store.h
index d683112fd7..f0b77146e4 100644
--- a/object-store.h
+++ b/object-store.h
@@ -2,6 +2,9 @@
#define OBJECT_STORE_H
#include "oidmap.h"
+#inclu
didn't modify the function that writes commit graphs - perhaps that
can be done in a subsequent series.
Jonathan Tan (5):
object-store: add missing include
commit-graph: add missing forward declaration
commit-graph: add free_commit_graph
commit-graph: store graph in struct object_store
> On 06/15, Jonathan Tan wrote:
> >
> > Supporting patterns would mean that we would possibly be able to
> > eliminate the ls-refs step, thus saving at least a RTT. (Originally I
> > thought that supporting patterns would also allow us to tolerate refs
> > being
> Floating on the mailing list, not cooking yet:
One more is my bitmap one here:
https://public-inbox.org/git/cover.1528397984.git.jonathanta...@google.com/
It's not in any branch yet, as far as I can tell, so I've just sent out
an e-mail letting Junio know [1].
[1]
> Here are the topics that have been cooking. Commits prefixed with
> '-' are only in 'pu' (proposed updates) while commits prefixed with
> '+' are in 'next'. The ones marked with '.' do not appear in any of
> the integration branches, but I am still holding onto them.
Would it be possible to
[snip]
> > in which we have rarely-updated branches that we still want to fetch
> > (e.g. an annotated tag when we fetch refs/tags/* or a Gerrit
> > refs/changes/* branch), having the ref advertisement first means that we
> > can omit them from our "want" or "want-ref" list. But not having them
>
> Jonathan Tan writes:
>
> >> Wouldn't that allow us not having to advertise the whole tags
> >> namespace only to implement the tag following?
> >
> > Yes, it would, but as far as I can tell, it would add an extra burden on
> > the server to walk all re
> Jonathan Tan writes:
>
> > When performing tag following, in addition to using the server's
> > "include-tag" capability to send tag objects (and emulating it if the
> > server does not support that capability), "git fetch" relies upon the
> >
> okay. Thinking long term, we may want to introduce a capability that
> can filter the tag space, e.g. "want-refs-since refs/tags/*"
> as a client directive as then the client only asks for new (newly
> created/appearing) tags instead of all tags.
I don't think refs normally have a
On Mon, Jun 18, 2018 at 11:30 AM, Stefan Beller wrote:
>> +test_expect_success 'fetch supports various ways of have lines' '
>> + rm -rf server client trace &&
>
> Can we move these deletions to test_when_finished of the previous(?) test
> as well as have them here in a test_when_finished
(replying to the original since my e-mail is about design)
> This version of ref-in-want is a bit more restrictive than what Jonathan
> originally proposed (only full ref names are allowed instead of globs
> and OIDs), but it is meant to accomplish the same goal (solve the issues
> of refs
> @@ -1122,6 +1124,7 @@ static int do_fetch(struct transport *transport,
> int autotags = (transport->remote->fetch_tags == 1);
> int retcode = 0;
> const struct ref *remote_refs;
> + struct ref *new_remote_refs = NULL;
Above, you use the name "updated_remote_refs" - it's
when using a transport that
does not support tag following), in that different priority queues will
now be used in each invocation, instead of reusing the possibly
non-empty one.
Signed-off-by: Jonathan Tan
---
fetch-pack.c | 116 ++-
1 file changed
one before any marking
(whether by rev_list_insert_ref_oid() or
mark_complete_and_common_ref()).
Signed-off-by: Jonathan Tan
---
fetch-pack.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/fetch-pack.c b/fetch-pack.c
index 5c87bb8bb..2812499a5 100644
--- a/fetch-pa
unconditionally.
[1] The rationale is further described in the originating commit
f2cba9299b ("fetch-pack: Finish negotation if remote replies "ACK %s
ready"", 2011-03-14).
Signed-off-by: Jonathan Tan
---
fetch-pack.c | 9 +
1 file changed, 5 insertions(+), 4 deletio
to negotiator/default.c, and it can be
seen that the lines replaced by negotiator->X() calls are present in the
X() functions respectively.
Signed-off-by: Jonathan Tan
---
Makefile | 2 +
fetch-negotiator.c | 8 ++
fetch-negotiator.h | 57
fetch-pack.c |
enqueue it with COMMON_REF | SEEN. The addition of COMMON_REF
ensures that its parents are not sent as "have" lines.
Change the order in do_fetch_pack_v2() to be consistent with
do_fetch_pack(), and to avoid sending unnecessary "have" lines.
Signed-off-by: Jonathan Tan
---
fetch-
patch 8 into patch 7; this means that the comments are not
moved verbatim, but for the reviewer, verbatim-ness of comments is
probably not that important anyway
Jonathan Tan (7):
fetch-pack: split up everything_local()
fetch-pack: clear marks before re-marking
fetch-pack: directly en
was introduced in a1c6d7c1a7
("fetch-pack: restore save_commit_buffer after use", 2017-12-08), is a
concern of the parse_object() call in mark_complete_and_common_ref(), so
it has been moved from the end of everything_local() to the end of
mark_complete_and_common_ref().
Signed-off-by: Jonathan Tan
-by: Jonathan Tan
---
fetch-pack.c | 6 --
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/fetch-pack.c b/fetch-pack.c
index 473e415c5..fb76d4017 100644
--- a/fetch-pack.c
+++ b/fetch-pack.c
@@ -505,11 +505,14 @@ static int find_common(struct negotiation_state *ns
In partial_clone_get_default_filter_spec(), the
core_partial_clone_filter_default variable may be NULL; ensure that it
is not NULL before using it.
Signed-off-by: Jonathan Tan
---
This was noticed by someone else at $DAY_JOB when trying to use a
partial clone with no core.partialclonefilter set
On Sat, 9 Jun 2018 02:04:38 -0400
Jeff King wrote:
> This function used to be idempotent, so any code which wanted to use the
> global bitmap_git could call it "just in case". After your patch, it's
> not. I think it's probably OK, since such functions would generally now
> take a bitmap_git
to another field within the same struct. The documentation for
that field has been updated to clarify that.
Signed-off-by: Jonathan Tan
---
builtin/pack-objects.c | 1 +
builtin/rev-list.c | 2 ++
pack-bitmap-write.c| 4
pack-bitmap.c | 35
reduced.
Jonathan Tan (2):
pack-bitmap: remove bitmap_git global variable
pack-bitmap: add free function
builtin/pack-objects.c | 7 +-
builtin/rev-list.c | 13 +-
pack-bitmap-write.c| 10 +-
pack-bitmap.c | 344 -
pack-bitmap.h
if an unnecessarily long-lived "pack" field in struct
bitmap_index still points to it.
The bitmap API is also clearer in that we need to first obtain a struct
bitmap_index, then we use it.
Helped-by: Stefan Beller
Signed-off-by: Jonathan Tan
---
builtin/pack-objects.c | 6 +-
builtin/rev-list.c
Signed-off-by: Jonathan Tan
---
negotiator/default.c | 14 ++
1 file changed, 6 insertions(+), 8 deletions(-)
diff --git a/negotiator/default.c b/negotiator/default.c
index b8f45cf78..a9e52c943 100644
--- a/negotiator/default.c
+++ b/negotiator/default.c
@@ -46,11 +46,10 @@ static
that patch, this struct
definition and several functions will be moved to a negotiation-specific
file, and this allows the move to be verbatim.
Signed-off-by: Jonathan Tan
---
fetch-pack.c | 104 +--
1 file changed, 59 insertions(+), 45 deletions(-)
to negotiator/default.c, and it can be
seen that the lines replaced by negotiator->X() calls are present in the
X() functions respectively.
Signed-off-by: Jonathan Tan
---
Makefile | 2 +
fetch-negotiator.c | 8 ++
fetch-negotiator.h | 57
fetch-pack.c |
one before any marking
(whether by rev_list_insert_ref_oid() or
mark_complete_and_common_ref()).
Signed-off-by: Jonathan Tan
---
fetch-pack.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/fetch-pack.c b/fetch-pack.c
index 5c87bb8bb..2812499a5 100644
--- a/fetch-pa
ge: comments should have ' *' at the start of each
> > line (could do in a preparatory patch or a followup).
>
> I'll add a followup.
I'm now not sure of the value of making a change just to update
formatting, but I added the followup commit anyway - it can be easily
dropped if we deci
rationale is further described in the originating commit
f2cba9299b ("fetch-pack: Finish negotation if remote replies "ACK %s
ready"", 2011-03-14).
Signed-off-by: Jonathan Tan
---
fetch-pack.c | 7 +++
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/fetch-pack.
was introduced in a1c6d7c1a7
("fetch-pack: restore save_commit_buffer after use", 2017-12-08), is a
concern of the parse_object() call in mark_complete_and_common_ref(), so
it has been moved from the end of everything_local() to the end of
mark_complete_and_common_ref().
Signed-off-by: Jonathan Tan
of COMMON_REF ensures that its parents
are not sent as "have" lines.
Change the order in do_fetch_pack_v2() to be consistent with
do_fetch_pack(), and to avoid sending unnecessary "have" lines.
Signed-off-by: Jonathan Tan
---
fetch-pack.c | 6 +++---
t/t550
-by: Jonathan Tan
---
fetch-pack.c | 6 --
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/fetch-pack.c b/fetch-pack.c
index c31644bb9..4a4ec4da3 100644
--- a/fetch-pack.c
+++ b/fetch-pack.c
@@ -499,11 +499,14 @@ static int find_common(struct data *data, struct
fetch_pack_args *args
On Tue, Jun 5, 2018 at 5:37 PM, Jonathan Nieder wrote:
>> This patch is written to be more easily reviewed: static functions are
>> moved verbatim from fetch-pack.c to negotiator/default.c, and it can be
>> seen that the lines replaced by negotiator->X() calls are present in the
>> X() functions
On Tue, Jun 5, 2018 at 5:01 PM, Jonathan Nieder wrote:
> I like it. I think it should be possible to describe the benefit of
> this patch without reference to the specifics of the subsequent one.
> Maybe something like:
>
> When receiving 'ACK continue' for a common commit,
>
On Tue, Jun 5, 2018 at 4:35 PM, Jonathan Nieder wrote:
> Jonathan Tan wrote:
>
>> Reduce the number of global variables by making the priority queue and
>> the count of non-common commits in it local, passing them as a struct to
>> various functions where necessary.
>
On Tue, Jun 5, 2018 at 4:30 PM, Jonathan Nieder wrote:
> I get lost in the above description. I suspect it's doing a good job
> of describing the code, instead of answering the question I really
> have about what is broken and what behavior we want instead.
>
> E.g. are there some commands that
On Tue, 5 Jun 2018 16:16:34 -0700
Jonathan Nieder wrote:
> Hi,
>
> Jonathan Tan wrote:
>
> > When "ACK %s ready" is received, find_common() clears rev_list in an
> > attempt to stop further "have" lines from being sent [1]. This appears
> &
On Tue, 5 Jun 2018 16:08:21 -0700
Jonathan Nieder wrote:
> Hi,
>
> Jonathan Tan wrote:
>
> > If tag following is required when using a transport that does not
> > support tag following, fetch_pack() will be invoked twice in the same
> > process, necessitating
uations.
This also necessitates a change another test which tested ref
advertisement filtering using tag refs - since tag refs are sent by
default now, the test has been switched to using branch refs instead.
Signed-off-by: Jonathan Tan
---
builtin/fetch.c| 2 +-
t/t5702-protocol-v2.sh |
ith ref-in-want (for example, in your latest
series [1]) we might be able to restore performance, because the server
can send refs/tags/X with the packfile instead of sending all
refs/tags/X refs initially to the client.
[1] https://public-inbox.org/git/20180605175144.4225-1-bmw...@google.com/
Extend the protocol v2 tests to also test fetches with multiple refspecs
specified. This also covers the previously uncovered cases of fetching
with prefix matching and fetching by SHA-1.
Signed-off-by: Jonathan Tan
---
t/t5702-protocol-v2.sh | 47 ++
1
]
https://public-inbox.org/git/20180531072339.ga43...@aiede.svl.corp.google.com/
Jonathan Tan (2):
t5702: test fetch with multiple refspecs at a time
fetch: send "refs/tags/" prefix upon CLI refspecs
builtin/fetch.c| 2 +-
t/t5702-protocol-
Extend the protocol v2 tests to also test fetches with multiple refspecs
specified. This also covers the previously uncovered cases of fetching
with prefix matching and fetching by SHA-1.
Signed-off-by: Jonathan Tan
---
t/t5702-protocol-v2.sh | 47 ++
1
e ref-prefixes when using a configured
refspec", 2018-05-18) ensured that "refs/tags/" is always sent as a ref
prefix when "git fetch" is invoked with no refspecs, but not when "git
fetch" is invoked with refspecs. Extend that functionality to make it
work in both si
to negotiator/default.c, and it can be
seen that the lines replaced by negotiator->X() calls are present in the
X() functions respectively.
Signed-off-by: Jonathan Tan
---
Makefile | 2 +
fetch-negotiator.c | 7 ++
fetch-negotiator.h | 45 ++
fetch-pack.c |
This enables the calculation of was_common and the invocation to
mark_common() to be abstracted into a single call to the negotiator API
(to be introduced in a subsequent patch).
Signed-off-by: Jonathan Tan
---
fetch-pack.c | 6 --
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git
that patch, this struct
definition and several functions will be moved to a negotiation-specific
file, and this allows the move to be verbatim.
Signed-off-by: Jonathan Tan
---
fetch-pack.c | 104 +--
1 file changed, 59 insertions(+), 45 deletions(-)
consistent with
do_fetch_pack(), and to avoid sending unnecessary "have" lines.
Signed-off-by: Jonathan Tan
---
fetch-pack.c | 6 +++---
t/t5500-fetch-pack.sh | 35 +++
2 files changed, 38 insertions(+), 3 deletions(-)
diff --git a/fetch-pack.c b/fetch-pa
/20180521204340.260572-1-jonathanta...@google.com/
Jonathan Tan (6):
fetch-pack: clear marks before everything_local()
fetch-pack: truly stop negotiation upon ACK ready
fetch-pack: in protocol v2, enqueue commons first
fetch-pack: make negotiation-related vars local
fetch-pack: move common check
Signed-off-by: Jonathan Tan
---
fetch-pack.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/fetch-pack.c b/fetch-pack.c
index a320ce987..1358973a4 100644
--- a/fetch-pack.c
+++ b/fetch-pack.c
@@ -336,9 +336,6 @@ static int find_common(struct fetch_pack_args *args,
tely to processing the packfile
upon "ACK %s ready". The clearing of rev_list here is thus redundant,
and this patch also removes it.
[1] The rationale is further described in the originating commit
f2cba9299b ("fetch-pack: Finish negotation if remote replies "ACK %s
ready"",
On Wed, 23 May 2018 12:42:10 +0900
Junio C Hamano wrote:
> Somehow this feels more like a WIP than RFC, primarily for two
> reasons. It was unclear what "edge" computation is trying to do; it
> seems way under-explained, especially the part that takes min-max
> while. merging two candidates.
On Thu, 24 May 2018 16:07:49 -0700
Stefan Beller <sbel...@google.com> wrote:
> Hi Jonathan,
>
> On Thu, May 24, 2018 at 1:47 PM, Jonathan Tan <jonathanta...@google.com>
> wrote:
> > If "git pull --recurse-submodules --rebase" is invoked when the current
te submodule
changes only)", 2017-06-23), which also introduced this feature.
This is because cmd_pull() in builtin/pull.c thus invokes
submodule_touches_in_range() with a null OID as the first parameter.
Ensure that this case works, and document what happens in this case.
Signed-of
On Mon, 21 May 2018 15:57:18 -0700
Stefan Beller wrote:
> In an ideal world, the server and client would both estimate the potential
> reduction of the packfile to send, and base the decision if to continue
> negotiating on the trade off if the packfile reduction savings are
e corresponding remote-tracking
tips.
This can be done simultaneously with the approach in this patch, but if
we were to evaluate only one first, the
ancestor-or-descendant-of-remote-tracking-tip approach might be the
better one to do first.
Signed-off-by: Jonathan Tan <jonathanta
On Thu, 17 May 2018 12:46:45 -0700
Stefan Beller wrote:
> Stefan Beller (8):
> xdiff/xdiff.h: remove unused flags
> xdiff/xdiffi.c: remove unneeded function declarations
> diff.c: do not pass diff options as keydata to hashmap
> diff.c: adjust hash function signature
On Thu, 10 May 2018 10:32:09 -0700
Stefan Beller wrote:
> > - I would call them release_commit() and release_tag(), to match
> >strbuf_release().
>
> Why not commit_release and tag_release to also have the same order
> of words as in strbuf_release ?
At this point in
On Wed, 9 May 2018 17:40:11 -0700
Stefan Beller wrote:
> if (obj->type == OBJ_TREE)
> - release_tree_node((struct tree*)obj);
> + free_tree_buffer((struct tree*)obj);
> else if (obj->type == OBJ_COMMIT)
> -
On Tue, 8 May 2018 17:29:48 -0700
Stefan Beller wrote:
> v2:
> * rebased onto origin/master
> * dropped leftover "toplevel" variable from experimentation
> * reworded the commit message for the first patch extensively
> * dropped the third patch
> * see "branch-diff" below.
On Tue, 8 May 2018 12:37:36 -0700
Stefan Beller wrote:
> +void clear_alloc_state(struct alloc_state *s)
> +{
> + while (s->slab_nr > 0) {
> + s->slab_nr--;
> + free(s->slabs[s->slab_nr]);
> + }
I should have caught this earlier, but you need
On Mon, 7 May 2018 15:59:16 -0700
Stefan Beller wrote:
> + for (i = 0; i < o->obj_hash_size; i++) {
> + struct object *obj = o->obj_hash[i];
> +
> + if (!obj)
> + continue;
> +
> + if (obj->type == OBJ_TREE) {
> +
On Mon, 7 May 2018 15:59:04 -0700
Stefan Beller wrote:
> /*
> - * Holds any information related to accessing the raw object content.
> + * Holds any information needed to retrieve the raw content
> + * of objects. The object_parser uses this to get
On Thu, 3 May 2018 11:12:27 -0700
Stefan Beller wrote:
> >> There are three different possible solutions that have more value:
> >> (a) The path value is documented as the path from the toplevel of the
> >> superproject to the mount point of the submodule. If 'the' refers
On Fri, 04 May 2018 11:24:39 +0900
Junio C Hamano wrote:
> Hmm, when somebody breaks "git server serve", we probably would not
> want to see the binary spewed to the output while debugging it. So
> I'd probably keep the redirection---it may be an improvement to use
> ">out"
The upload-pack code paths never call git_config() with
upload_pack_config() when protocol v2 is used, causing options like
uploadpack.packobjectshook to not take effect. Ensure that this function
is called.
Signed-off-by: Jonathan Tan <jonathanta...@google.com>
---
t/t5702-protocol-v2.s
quot;
only if uploadpack.allowfilter is configured.
Like in the legacy protocol, the client continues with a warning if
"--filter" is specified, but the server does not advertise it.
Signed-off-by: Jonathan Tan <jonathanta...@google.com>
---
Documentation/technical/protocol-v2.
Fix a typo in an error message.
Also, this line was introduced in 3145ea957d2c ("upload-pack: introduce
fetch server command", 2018-03-15), which did not contain a test for the
case which causes this error to be printed, so introduce a test.
Signed-off-by: Jonathan Tan <jonathanta.
Changes from v2: followed all Stefan's comments.
Jonathan Tan (3):
upload-pack: fix error message typo
upload-pack: read config when serving protocol v2
{fetch,upload}-pack: support filter in protocol v2
Documentation/technical/protocol-v2.txt | 9 ++
fetch-pack.c
On Thu, 3 May 2018 12:08:16 -0700
Stefan Beller wrote:
> test_path_is_missing ?
Thanks for the pointer. Done.
> > + GIT_TRACE=/tmp/y git -c protocol.version=2 clone
> > "file://$(pwd)/server" client &&
>
> Why do we redirect GIT_TRACE outside the test suite? do we
On Thu, 3 May 2018 11:58:59 -0700
Stefan Beller wrote:
> > + test_must_fail git -C server serve --stateless-rpc /dev/null
> > 2>err &&
>
> Minor nit:
> Why do we pipe stdout to /dev/null ?
Usually there's a binary packfile produced, but not in this case. I'll
remove
On Wed, 2 May 2018 17:53:58 -0700
Stefan Beller wrote:
> + argv_array_pushf(, "path=%s; %s",
> + path, info->argv[0]);
Do we need to quote the path here? (For example, what if path has a
quotation mark?)
Also, would it be useful to
On Wed, 2 May 2018 17:53:56 -0700
Stefan Beller wrote:
> $name is the name of the relevant submodule section in `.gitmodules`,
> $sm_path is the path of the submodule as recorded in the superproject,
> $sha1 is the commit as recorded in the superproject,
On Wed, 2 May 2018 17:53:55 -0700
Stefan Beller wrote:
> foreach [--recursive] ::
> Evaluates an arbitrary shell command in each checked out submodule.
> - The command has access to the variables $name, $path, $sha1 and
> + The command has access to the
On Wed, 2 May 2018 17:53:54 -0700
Stefan Beller wrote:
> From: Prathamesh Chavan
>
> When running 'git submodule foreach --recursive' from a subdirectory of
> your repository, nested submodules get a bogus value for $path:
I know I said in a previous
On Tue, 1 May 2018 14:34:03 -0700
Stefan Beller wrote:
> +void *allocate_alloc_state(void)
> +{
> + return xcalloc(1, sizeof(struct alloc_state));
> +}
> +
> +void clear_alloc_state(struct alloc_state *s)
> +{
> + while (s->slab_nr > 0) {
> +
On Tue, 1 May 2018 14:34:02 -0700
Stefan Beller <sbel...@google.com> wrote:
> Signed-off-by: Jonathan Nieder <jrnie...@gmail.com>
> Signed-off-by: Stefan Beller <sbel...@google.com>
Reviewed-by: Jonathan Tan <jonathanta...@google.com>
Downloading this patch set
On Tue, 1 May 2018 14:33:54 -0700
Stefan Beller wrote:
> Signed-off-by: Stefan Beller
Add the same boilerplate explanation to this and subsequent commits. If
editing it for every new function name is cumbersome, maybe use this
shortened version:
This
On Tue, 1 May 2018 14:33:51 -0700
Stefan Beller wrote:
> Git's object access code can be thought of as containing two layers:
> the raw object store provides access to raw object content, while the
> higher level obj_hash code parses raw objects and keeps track of
>
quot;
only if uploadpack.allowfilter is configured.
Like in the legacy protocol, the client continues with a warning if
"--filter" is specified, but the server does not advertise it.
Signed-off-by: Jonathan Tan <jonathanta...@google.com>
---
Documentation/technical/protocol-v2.
hole, I just made the uploadpack.packobjectshook not have any
spaces, just like in t5544.
Jonathan Tan (3):
upload-pack: fix error message typo
upload-pack: read config when serving protocol v2
{fetch,upload}-pack: support filter in protocol v2
Documentation/technical/protocol-v
The upload-pack code paths never call git_config() with
upload_pack_config() when protocol v2 is used, causing options like
uploadpack.packobjectshook to not take effect. Ensure that this function
is called.
Signed-off-by: Jonathan Tan <jonathanta...@google.com>
---
t/t5702-protocol-v2.s
Fix a typo in an error message.
Also, this line was introduced in 3145ea957d2c ("upload-pack: introduce
fetch server command", 2018-03-15), which did not contain a test for the
case which causes this error to be printed, so introduce a test.
Signed-off-by: Jonathan Tan <jonathanta.
On Tue, 1 May 2018 15:22:20 -0700
Jonathan Tan <jonathanta...@google.com> wrote:
> +test_expect_success 'unexpected lines are not allowed in fetch request' '
> + git init server &&
> +
> + # Custom request that tries to filter even though it is not advertise
quot;
only if uploadpack.allowfilter is configured.
Like in the legacy protocol, the client continues with a warning if
"--filter" is specified, but the server does not advertise it.
Signed-off-by: Jonathan Tan <jonathanta...@google.com>
---
Documentation/technical/protocol-v2.
thing I am a little unhappy about is the fact that the upload-pack
config has to be read in multiple places, but perhaps there is no choice
about that.
Jonathan Tan (2):
upload-pack: fix error message typo
{fetch,upload}-pack: support filter in protocol v2
Documentation/technical/protocol-v2
Fix a typo in an error message.
Also, this line was introduced in 3145ea957d2c ("upload-pack: introduce
fetch server command", 2018-03-15), which did not contain a test for the
case which causes this error to be printed, so introduce a test.
Signed-off-by: Jonathan Tan <jonathanta.
Tan's
> commit 89973554b52c ("diffcore-rename: make diff-tree -l0 mean
> -l", 2017-11-29)), and doesn't actually drop the limit to 0.
> cc'ing Jonathan Tan for his thoughts.
Documenting that the value of 0 is special does make sense to me. I
think this patch can go in as-is, though - it is already an improvement.
On Wed, 25 Apr 2018 11:20:57 -0700
Stefan Beller <sbel...@google.com> wrote:
> v3:
> * fixed and extended the commit message of last commit
> * fixed the last patch, as Jonathan Tan suggested, see interdiff:
Thanks, all my comments have been addressed.
Reviewed-by: Jonathan
On Tue, 24 Apr 2018 16:23:28 -0700
Stefan Beller wrote:
> >> s/missmatch/mismatch/
> >> Also, what is this used for?
> >
> > The mismatch should be used for (thanks for catching!)
> > checking if the remainder of a line is the same, although a boolean
> > may be not the
On Tue, 24 Apr 2018 15:37:51 -0700
Stefan Beller wrote:
> These can be combined independently, so would
> you expect the user to expect two options for them?
> For example "--color-moved=zebra" could be split
> into "--skip-small --alternate-blocks"
Yes, this is a good
On Tue, 24 Apr 2018 14:59:09 -0700
Stefan Beller wrote:
> This involves also adapting oid_object_info_extended and a some
> internal functions that are used to implement these. It all has to
> happen in one patch, because of a single recursive chain of calls visits
> all
On Tue, 24 Apr 2018 14:03:23 -0700
Stefan Beller wrote:
> v2:
> I think I have addressed Jonathans feedback
> * by using a string instead of counting the first character only.
> * refined tests slightly (easier to read)
> * moved white space handling for moved blocks into its
On Tue, 24 Apr 2018 14:03:30 -0700
Stefan Beller wrote:
> +--color-moved-[no-]ignore-space-prefix-delta::
> + Ignores whitespace when comparing lines when performing the move
> + detection for --color-moved. This ignores uniform differences
> + of white space at
On Tue, 24 Apr 2018 14:03:29 -0700
Stefan Beller wrote:
> As we change the default, we'll adjust the tests.
This statement is probably better written as:
In some existing tests, options like --ignore-space-at-eol were used
to control the color of the output. They have
On Tue, 24 Apr 2018 14:03:28 -0700
Stefan Beller wrote:
> Suggested-by: Ævar Arnfjörð Bjarmason
> (https://public-inbox.org/git/87o9j0uljo@evledraar.gmail.com/)
> Signed-off-by: Stefan Beller
Firstly, I don't know if this is the
On Tue, 24 Apr 2018 11:42:33 -0700
Brandon Williams <bmw...@google.com> wrote:
> On 04/24, Jonathan Tan wrote:
> > On Mon, 23 Apr 2018 16:43:27 -0700
> > Stefan Beller <sbel...@google.com> wrote:
> >
> > > This involves also adapting sha1_object_info_ex
201 - 300 of 1061 matches
Mail list logo