On Fri, Dec 7, 2018 at 6:14 PM Josh Wolfe wrote:
>
> git version 2.19.1
> steps to reproduce:
>
> # start in a brand new repo
> git init
>
> # create lots of unreachable loose objects
> for i in {1..1}; do git commit-tree -m "$(head -c 12 /dev/urandom
> | base64)" "$(git mktree <&-)" <&-;
On Fri, Dec 7, 2018 at 9:51 AM Johannes Sixt wrote:
>
> From: Elijah Newren
>
> In commit 6aba117d5cf7 ("am: avoid directory rename detection when
> calling recursive merge machinery", 2018-08-29), the git-rebase manpage
> probably should have also been
On Tue, Dec 4, 2018 at 11:40 PM Junio C Hamano wrote:
>
> Johannes Sixt writes:
>
> > Please let me deposit my objection. This paragraph is not the right
> > place to explain what directory renme detection is and how it works
> > under the hood. "works fine" in the original text is the right
On Wed, Dec 5, 2018 at 6:56 AM Konstantin Khomoutov wrote:
>
> On Wed, Dec 05, 2018 at 05:22:14PM +0300, Konstantin Kharlamov wrote:
>
> > It would be great if git-log has a formatting option to insert an
> > index of the current commit since HEAD.
> >
> > It would allow after quitting the
On Tue, Dec 4, 2018 at 7:54 PM Junio C Hamano wrote:
>
> Elijah Newren writes:
>
> > Gah, when I was rebasing on your patch I adopted your sentence rewrite
> > but forgot to remove the "sometimes". Thanks for catching; correction:
>
> >
> > -
On Tue, Dec 4, 2018 at 6:26 PM Junio C Hamano wrote:
>
> Duy Nguyen writes:
>
> > On Tue, Dec 4, 2018 at 6:43 PM Elijah Newren wrote:
> >> > > > +--ours::
> >> > > > +--theirs::
> >> ...
> >> go away. Maybe it can still be f
On Tue, Dec 4, 2018 at 6:14 PM Junio C Hamano wrote:
>
> Duy Nguyen writes:
>
> >> My single biggest worry about this whole series is that I'm worried
> >> you're perpetuating and even further ingraining one of the biggest
> >> usability problems with checkout: people suggest and use it for
> >>
On Tue, Dec 4, 2018 at 1:53 PM Johannes Sixt wrote:
>
> Am 04.12.18 um 22:24 schrieb Elijah Newren:
> > + The am backend sometimes does not because it operates on
> > +"fake ancestors" that involve trees containing only the files modified
> > +in
about directory rename detection
and am
In commit 6aba117d5cf7 ("am: avoid directory rename detection when
calling recursive merge machinery", 2018-08-29), the git-rebase manpage
probably should have also been updated to note the stronger
incompatibility between git-am and directory rename dete
On Tue, Dec 4, 2018 at 10:22 AM Duy Nguyen wrote:
>
> On Tue, Dec 4, 2018 at 6:45 PM Elijah Newren wrote:
> > > > > - Two more fancy features (the "git checkout --index" being the
> > > > > default mode and the backup log for accidental overw
On Tue, Dec 4, 2018 at 8:28 AM Duy Nguyen wrote:
>
> On Tue, Dec 4, 2018 at 2:29 AM Elijah Newren wrote:
> >
> > On Thu, Nov 29, 2018 at 2:01 PM Nguyễn Thái Ngọc Duy
> > wrote:
> > >
> > > v3 sees switch-branch go back to switch-branch (in v2 it
On Tue, Dec 4, 2018 at 8:22 AM Duy Nguyen wrote:
>
> Thanks for all the comments! There are still some I haven't replied
> (either I'll agree and do it anyway, or I'll need some more time to
> digest)
>
> On Tue, Dec 4, 2018 at 1:45 AM Elijah Newren wrote:
> > > +
On Thu, Nov 29, 2018 at 2:01 PM Nguyễn Thái Ngọc Duy wrote:
>
> v3 sees switch-branch go back to switch-branch (in v2 it was
> checkout-branch). checkout-files is also renamed restore-files (v1 was
> restore-paths). Hopefully we won't see another rename.
I started reading through the patches. I
On Thu, Nov 29, 2018 at 2:03 PM Nguyễn Thái Ngọc Duy wrote:
>
> "git checkout" doing too many things is a source of confusion for many
> users (and it even bites old timers sometimes). To rememdy that, the
> command is now split in two: switch-branch and checkout-files. The
"checkout-files"
Hi,
Thanks for the patch!
On Fri, Nov 30, 2018 at 6:52 PM Carlo Marcelo Arenas Belón
wrote:
>
> b8cd1bb713 ("t6036, t6043: increase code coverage for file collision
> handling", 2018-11-07) uses this GNU extension that is not available in a
> POSIX complaint
This is an extraordinarily long
On Fri, Nov 30, 2018 at 6:16 AM Junio C Hamano wrote:
>
> Johannes Schindelin writes:
>
> > Hi Junio,
> >
> > On Fri, 30 Nov 2018, Junio C Hamano wrote:
> >
> >> * en/rebase-merge-on-sequencer (2018-11-08) 2 commits
> >> - rebase: implement --merge via git-rebase--interactive
> >> -
On Wed, Nov 28, 2018 at 8:12 AM Duy Nguyen wrote:
>
> On Thu, Nov 22, 2018 at 7:32 PM Elijah Newren wrote:
> >
> > In commit f57696802c30 ("rebase: really just passthru the `git am`
> > options", 2018-11-14), the handling of `git am` options was simplified
>
On Wed, Nov 28, 2018 at 12:28 AM Johannes Schindelin
wrote:
>
> Hi Elijah,
>
> On Wed, 21 Nov 2018, Elijah Newren wrote:
>
> > In commit f57696802c30 ("rebase: really just passthru the `git am`
> > options", 2018-11-14), the handling of `git am` op
On Tue, Nov 27, 2018 at 4:16 PM Ævar Arnfjörð Bjarmason
wrote:
>
> On Wed, Nov 28 2018, Bryan Turner wrote:
>
> > On Tue, Nov 27, 2018 at 3:47 PM Ævar Arnfjörð Bjarmason
> > wrote:
> >>
> >> On Tue, Nov 27 2018, Bryan Turner wrote:
> >>
> >> >
> >> > Is there anything I can set, perhaps some
On Sun, Nov 25, 2018 at 11:37 PM Junio C Hamano wrote:
>
> Unless I hear otherwise in the next 24 hours, I am planning to
> merge the following topics to 'master' before cutting -rc2. Please
> stop me on any of these topics.
>
> - jc/postpone-rebase-in-c
>
>This may be the most
it as an empty commit trivially squashed into
its parent.
This brings the rebase--am and rebase--merge backends in sync with the
behavior of the interactive rebase backend.
Signed-off-by: Elijah Newren
---
builtin/am.c | 9 +
git-rebase--merge.sh | 2 ++
t/t5407
rmance improvement: by way of comparison, turning on --topo-order
made fast-export faster (see
https://public-inbox.org/git/20090211135640.ga19...@coredump.intra.peff.net/).
Signed-off-by: Elijah Newren
---
git-rebase--am.sh | 2 +-
git-rebase--merge.sh | 2 +-
t/t3
is
now REBASE-i.
Signed-off-by: Elijah Newren
---
.gitignore| 1 -
Documentation/git-rebase.txt | 17 +--
Makefile | 1 -
builtin/rebase.c | 14 +--
git-legacy-rebase.sh | 43
git-rebase--merge.sh
se" file in the state_dir, while the other was signalled by the
contents of a "quiet" file was just weirdly inconsistent. (This
inconsistency pre-dated the rewrite into C.) Make them consistent by
having them both key off the presence of the file.
Signed-off-by: Elijah Newren
---
buil
have
no empty commits). A subsequent commit will remove the inconsistency in
--skip handling.
Signed-off-by: Elijah Newren
---
t/t5407-post-rewrite-hook.sh | 31 +++
1 file changed, 31 insertions(+)
diff --git a/t/t5407-post-rewrite-hook.sh b/t/t5407-post-rewrite
and giving us the following form:
if incomptable_opts:
if interactive:
show_error_about_interactive_and_am_incompatibilities
if rebase-merge:
show_error_about_merge_and_am_incompatibilities
Signed-off-by: Elijah Newren
---
git-legacy-rebase.sh | 20
1 file changed, 8
s documented pretty thoroughly in the rebase
man page (in the "Incompatible Options" section, with multiple links
throughout the document), and since I expect this list to change over
time, just simplify the error message.
Signed-off-by: Elijah Newren
---
builtin/rebase.c | 11 --
if block to a doubly-nested
if-block still keeps all necessary checks in place.
- Rebased to latest master
Elijah Newren (7):
rebase: fix incompatible options error message
t5407: add a test demonstrating how interactive handles --skip
differently
am, rebase--merge: do not overlook
patch at the beginning to convert pre-existing sha1
stuff to oid (rename sha1_to_hex() -> oid_to_hex(), rename
anonymize_sha1() to anonymize_oid(), etc.)
* Modified other patches in the series to add calls to oid_to_hex() rather
than sha1_to_hex()
Elijah Newren (11):
fast-exp
fast-import.c has started with a comment for nine and a half years
re-directing the reader to Documentation/git-fast-import.txt for
maintained documentation. Instead of leaving the unmaintained
documentation in place, just excise it.
Signed-off-by: Elijah Newren
---
fast-import.c | 154
Logic to replace a filtered commit with an unfiltered ancestor is useful
elsewhere; put it into a function we can call.
Signed-off-by: Elijah Newren
---
builtin/fast-export.c | 37 ++---
1 file changed, 22 insertions(+), 15 deletions(-)
diff --git a/builtin/fast
-by: Elijah Newren
---
Documentation/git-fast-export.txt | 17 +++--
builtin/fast-export.c | 42 +++
t/t9350-fast-export.sh| 11
3 files changed, 58 insertions(+), 12 deletions(-)
diff --git a/Documentation/git-fast-export.txt
b
to be
excluded. That logically means ref deletion. Previously, such refs
were just silently omitted from being exported despite having been
explicitly requested for export.
Signed-off-by: Elijah Newren
---
builtin/fast-export.c | 54 --
t/t9350-fast-export.sh
Signed-off-by: Elijah Newren
---
Documentation/git-fast-export.txt | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/Documentation/git-fast-export.txt
b/Documentation/git-fast-export.txt
index ce954be532..fda55b3284 100644
--- a/Documentation/git-fast-export.txt
+++ b
-by: Elijah Newren
---
Documentation/git-fast-export.txt | 7 +++
Documentation/git-fast-import.txt | 16
builtin/fast-export.c | 20 +++-
fast-import.c | 12
t/t9350-fast-export.sh| 17
Signed-off-by: Elijah Newren
---
Documentation/git-fast-import.txt | 7 ---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/Documentation/git-fast-import.txt
b/Documentation/git-fast-import.txt
index e81117d27f..7ab97745a6 100644
--- a/Documentation/git-fast-import.txt
+++ b
ABORT and ERROR happen to have the same value, but come from differnt
enums. Use the one from the correct enum, and while at it, rename the
values to avoid such problems.
Signed-off-by: Elijah Newren
---
builtin/fast-export.c | 12 ++--
1 file changed, 6 insertions(+), 6 deletions
Rename anonymize_sha1() to anonymize_oid(() and change its signature,
and switch from sha1_to_hex() to oid_to_hex() and from GIT_SHA1_RAWSZ to
the_hash_algo->rawsz. Also change a comment and a die string to mention
oid instead of sha1.
Signed-off-by: Elijah Newren
---
builtin/fast-expor
ast-import gained the ability to delete refs (see
commit 4ee1b225b99f, "fast-import: add support to delete refs",
2014-04-20), so now we do have a valid option to rewrite the tag to.
Delete these tags instead of dying.
Signed-off-by: Elijah Newren
---
builtin/fast-export.c | 9 +++
sh.
Avoid this problem by taking the commit the ref points to and finding an
ancestor of it that was exported, and make the ref point to that commit
instead.
Signed-off-by: Elijah Newren
---
builtin/fast-export.c | 13 -
t/t9350-fast-export.sh | 20
2 files c
On Wed, Nov 14, 2018 at 11:28 AM SZEDER Gábor wrote:
>
> On Tue, Nov 13, 2018 at 04:25:57PM -0800, Elijah Newren wrote:
> > diff --git a/builtin/fast-export.c b/builtin/fast-export.c
> > index 2fef00436b..3cc98c31ad 100644
> > --- a/builtin/fast-export.c
> &g
On Wed, Nov 14, 2018 at 11:17 AM SZEDER Gábor wrote:
> On Tue, Nov 13, 2018 at 04:25:53PM -0800, Elijah Newren wrote:
> > diff --git a/builtin/fast-export.c b/builtin/fast-export.c
> > index af724e9937..b984a44224 100644
> > --- a/builtin/fast-export.c
> >
Hi Phillip,
On Mon, Nov 12, 2018 at 10:21 AM Phillip Wood wrote:
> >> -Flags only understood by the am backend:
> >> +The following options:
> >>
> >> * --committer-date-is-author-date
> >> * --ignore-date
> >> @@ -520,15 +512,12 @@ Flags only understood by the am backend:
> >> *
Hi Dscho,
On Mon, Nov 12, 2018 at 8:21 AM Johannes Schindelin
wrote:
> > t3425: topology linearization was inconsistent across flavors of rebase,
> > as already noted in a TODO comment in the testcase. This was not
> > considered a bug before, so getting a different
On Tue, Nov 13, 2018 at 1:52 PM Ævar Arnfjörð Bjarmason
wrote:
> According to Junio's calendar we're now 2 days from 2.20-rc0. We have
> the js/rebase-autostash-detach-fix bug I reported sitting in "pu" still,
> and then this.
>
> I see we still have rebase.useBuiltin in the code as an escape
-by: Elijah Newren
---
Documentation/git-fast-export.txt | 7 +++
Documentation/git-fast-import.txt | 16
builtin/fast-export.c | 20 +++-
fast-import.c | 12
t/t9350-fast-export.sh| 17
Logic to replace a filtered commit with an unfiltered ancestor is useful
elsewhere; put it into a function we can call.
Signed-off-by: Elijah Newren
---
builtin/fast-export.c | 37 ++---
1 file changed, 22 insertions(+), 15 deletions(-)
diff --git a/builtin/fast
rename, it
only prints
R oldname newname
instead of
R oldname newname
M 100644 $SHA1 newname
as occurs when there is a rename+modify. Add an option which allows us
to force the latter output even when commits have exact renames of
files.
Signed-off-by: Elijah Newren
---
Docume
one didn't make sense to
Peff. I hope this one does.
Elijah Newren (11):
git-fast-import.txt: fix documentation for --quiet option
git-fast-export.txt: clarify misleading documentation about rev-list
args
fast-export: use value from correct enum
fast-export: avoid dying when
sh.
Avoid this problem by taking the commit the ref points to and finding an
ancestor of it that was exported, and make the ref point to that commit
instead.
Signed-off-by: Elijah Newren
---
builtin/fast-export.c | 13 -
t/t9350-fast-export.sh | 20
2 files c
ABORT and ERROR happen to have the same value, but come from differnt
enums. Use the one from the correct enum, and while at it, rename the
values to avoid such problems.
Signed-off-by: Elijah Newren
---
builtin/fast-export.c | 12 ++--
1 file changed, 6 insertions(+), 6 deletions
Signed-off-by: Elijah Newren
---
Documentation/git-fast-import.txt | 7 ---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/Documentation/git-fast-import.txt
b/Documentation/git-fast-import.txt
index e81117d27f..7ab97745a6 100644
--- a/Documentation/git-fast-import.txt
+++ b
ast-import gained the ability to delete refs (see
commit 4ee1b225b99f, "fast-import: add support to delete refs",
2014-04-20), so now we do have a valid option to rewrite the tag to.
Delete these tags instead of dying.
Signed-off-by: Elijah Newren
---
builtin/fast-export.c | 9 +++
fast-import.c has started with a comment for nine and a half years
re-directing the reader to Documentation/git-fast-import.txt for
maintained documentation. Instead of leaving the unmaintained
documentation in place, just excise it.
Signed-off-by: Elijah Newren
---
fast-import.c | 154
-by: Elijah Newren
---
Documentation/git-fast-export.txt | 17 +++--
builtin/fast-export.c | 42 +++
t/t9350-fast-export.sh| 11
3 files changed, 58 insertions(+), 12 deletions(-)
diff --git a/Documentation/git-fast-export.txt
b
to be
excluded. That logically means ref deletion. Previously, such refs
were just silently omitted from being exported despite having been
explicitly requested for export.
Signed-off-by: Elijah Newren
---
builtin/fast-export.c | 54 --
t/t9350-fast-export.sh
Signed-off-by: Elijah Newren
---
Documentation/git-fast-export.txt | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/Documentation/git-fast-export.txt
b/Documentation/git-fast-export.txt
index ce954be532..fda55b3284 100644
--- a/Documentation/git-fast-export.txt
+++ b
On Tue, Nov 13, 2018 at 3:39 PM Jonathan Nieder wrote:
> Elijah Newren wrote:
> > Actually, no, it actually needs to be inconsistent.
> >
> > Different Input Choices (neither backslashed, both backslashed, then just
> > one):
> > master~9 and master~
On Sat, Nov 10, 2018 at 11:17 PM Elijah Newren wrote:
>
> On Sat, Nov 10, 2018 at 10:36 PM Jeff King wrote:
> >
> > On Sat, Nov 10, 2018 at 10:23:04PM -0800, Elijah Newren wrote:
> >
> > > Signed-off-by: Elijah Newren
> > > ---
> > > Docu
On Tue, Nov 13, 2018 at 6:45 AM Jeff King wrote:
> It is an expensive log command, but it's the same expense as running
> fast-export, no? And I think maybe that is the disconnect.
I would expect an expensive log command to generally be the same
expense as running fast-export, yes. But I would
Hi Dscho,
Thanks for the detailed review! I'll try to get back to all your
comments, but for now I feel bad that I didn't see and respond to at
least one sooner...
On Mon, Nov 12, 2018 at 8:21 AM Johannes Schindelin
wrote:
>
> Thank you for this pleasant read. I think there is still quite a
On Mon, Nov 12, 2018 at 4:58 AM Jeff King wrote:
> On Sun, Nov 11, 2018 at 12:42:58AM -0800, Elijah Newren wrote:
>
> Maybe I don't understand what you're trying to accomplish. I was
> thinking specifically of your "cat-file can tell you the large objects,
> but you don't know
On Mon, Nov 12, 2018 at 4:53 AM Jeff King wrote:
> On Sun, Nov 11, 2018 at 12:32:22AM -0800, Elijah Newren wrote:
>
> > > > Documentation/git-fast-export.txt | 7 +++
> > > > builtin/fast-export.c | 20 +++-
> > > &g
On Mon, Nov 12, 2018 at 4:45 AM Jeff King wrote:
> On Sun, Nov 11, 2018 at 12:01:43AM -0800, Elijah Newren wrote:
>
> > > It does seem funny that the behavior for the earlier case (bounded
> > > commits) and this case (skipping some commits) are different. Would you
On Mon, Nov 12, 2018 at 1:17 AM Ævar Arnfjörð Bjarmason
wrote:
>
>
> On Thu, Nov 01 2018, Elijah Newren wrote:
>
> > On Wed, Oct 31, 2018 at 12:16 PM Lars Schneider
> > wrote:
> >> > On Sep 24, 2018, at 7:24 PM, Elijah Newren wrote:
> >> >
On Sat, Nov 10, 2018 at 11:27 PM Jeff King wrote:
>
> On Sat, Nov 10, 2018 at 10:23:02PM -0800, Elijah Newren wrote:
>
> > This is a series of ten patches representing two doc corrections, one
> > pedantic fix, three real bug fixes, one micro code refactor, and three
&g
On Sat, Nov 10, 2018 at 11:23 PM Jeff King wrote:
>
> On Sat, Nov 10, 2018 at 10:23:12PM -0800, Elijah Newren wrote:
>
> > fast-export output is traditionally used as an input to a fast-import
> > program, but it is also useful to help gather statistics about the
> &
On Sat, Nov 10, 2018 at 11:20 PM Jeff King wrote:
>
> On Sat, Nov 10, 2018 at 10:23:11PM -0800, Elijah Newren wrote:
>
> > Knowing the original names (hashes) of commits, blobs, and tags can
> > sometimes enable post-filtering that would otherwise be difficult or
> >
On Sat, Nov 10, 2018 at 11:02 PM Jeff King wrote:
>
> On Sat, Nov 10, 2018 at 10:23:09PM -0800, Elijah Newren wrote:
>
> > If file paths are specified to fast-export and a ref points to a commit
> > that does not touch any of the relevant paths, then that ref wou
On Sat, Nov 10, 2018 at 10:53 PM Jeff King wrote:
>
> On Sat, Nov 10, 2018 at 10:23:08PM -0800, Elijah Newren wrote:
>
> > If file paths are specified to fast-export and multiple refs point to a
> > commit that does not touch any of the relevant file paths, then
> > f
On Sat, Nov 10, 2018 at 10:44 PM Jeff King wrote:
>
> On Sat, Nov 10, 2018 at 10:23:06PM -0800, Elijah Newren wrote:
>
> > If --tag-of-filtered-object=rewrite is specified along with a set of
> > paths to limit what is exported, then any tags pointing to old commits
> &
On Sat, Nov 10, 2018 at 10:36 PM Jeff King wrote:
>
> On Sat, Nov 10, 2018 at 10:23:04PM -0800, Elijah Newren wrote:
>
> > Signed-off-by: Elijah Newren
> > ---
> > Documentation/git-fast-export.txt | 3 ++-
> > 1 file changed, 2 insertions(+), 1 deletion(-)
&
ABORT and ERROR happen to have the same value, but come from differnt
enums. Use the one from the correct enum.
Signed-off-by: Elijah Newren
---
builtin/fast-export.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/builtin/fast-export.c b/builtin/fast-export.c
index
Signed-off-by: Elijah Newren
---
Documentation/git-fast-export.txt | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/Documentation/git-fast-export.txt
b/Documentation/git-fast-export.txt
index ce954be532..677510b7f7 100644
--- a/Documentation/git-fast-export.txt
+++ b
Logic to replace a filtered commit with an unfiltered ancestor is useful
elsewhere; put it into a function we can call.
Signed-off-by: Elijah Newren
---
builtin/fast-export.c | 37 ++---
1 file changed, 22 insertions(+), 15 deletions(-)
diff --git a/builtin/fast
instead of
R oldname newname
M 100644 $SHA1 newname
then it makes the job more difficult. Add an option which allows us to
force the latter output even when commits have exact renames of files.
Signed-off-by: Elijah Newren
---
Documentation/git-fast-export.txt | 11 ++
builtin
ast-import gained the ability to delete refs (see
commit 4ee1b225b99f, "fast-import: add support to delete refs",
2014-04-20), so now we do have a valid option to rewrite the tag to.
Delete these tags instead of dying.
Signed-off-by: Elijah Newren
---
builtin/fast-export.c | 9 +++
sh.
Avoid this problem by taking the commit the ref points to and finding an
ancestor of it that was exported, and make the ref point to that commit
instead.
Signed-off-by: Elijah Newren
---
builtin/fast-export.c | 13 -
t/t9350-fast-export.sh | 24
2 files c
to be
excluded. That logically means ref deletion. Previously, such refs
were just silently omitted from being exported despite having been
explicitly requested for export.
Signed-off-by: Elijah Newren
---
NOTE: I was hoping the strmap API proposal would materialize, but I either
missed
will only be useful in a
repository which already contains the necessary commits (much like the
restriction imposed when using --no-data).
Signed-off-by: Elijah Newren
---
Documentation/git-fast-export.txt | 16 ++--
builtin/fast-export.c | 42 +++
t
difficult without knowing the original names of each
commit.
This commit teaches a new --show-original-ids option to fast-export
which will make it add a 'originally ' line to blob, commits, and
tags. It also teaches fast-import to parse (and ignore) such lines.
Signed-off-by: Elijah Newren
Signed-off-by: Elijah Newren
---
Documentation/git-fast-import.txt | 7 ---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/Documentation/git-fast-import.txt
b/Documentation/git-fast-import.txt
index e81117d27f..7ab97745a6 100644
--- a/Documentation/git-fast-import.txt
+++ b
split them up and how you suggest doing so.
These patches were driven by the needs of git-repo-filter[1], but most
if not all of them should be independently useful.
Elijah Newren (10):
git-fast-import.txt: fix documentation for --quiet option
git-fast-export.txt: clarify misleading documentation
On Wed, Nov 7, 2018 at 10:02 PM Elijah Newren wrote:
>
> Now that the rewrite-interactive-rebases-in-C series have finally
> merged to master, this series deletes git-rebase--merge.sh and
> reimplements the --merge behavior on top of the interactive machinery.
>
> Di
(No range-diff provided, because it has been months since v1, and v1
was only RFC and was only discussed at a high level.)
Elijah Newren (2):
git-rebase, sequencer: extend --quiet option for the interactive
machinery
rebase: Implement --merge via git-rebase--interactive
.gitignore
called based on a quick comparison
of this tests and previous ones which covered different rebase
flavors. I think this is just attributable to this difference.
t9903: --merge uses the interactive backend so the prompt expected is
now REBASE-i.
Signed-off-by: Elijah
; file in the state_dir, while the other was signalled by the
contents of a "quiet" file was just weirdly inconsistent. (This
inconsistency pre-dated the rewrite into C.) Make them consistent by
having them both key off the presence of the file.
Signed-off-by: Elijah Newren
---
buil
and consistent behavior between the different conflict types.
Signed-off-by: Elijah Newren
---
merge-recursive.c| 154 +--
t/t6042-merge-rename-corner-cases.sh | 29 +++--
t/t6043-merge-rename-directories.sh | 24 +++--
3 files changed, 113
s will fix the conflict handling to make
these tests pass.
Signed-off-by: Elijah Newren
---
t/t6042-merge-rename-corner-cases.sh | 162 +++
1 file changed, 162 insertions(+)
diff --git a/t/t6042-merge-rename-corner-cases.sh
b/t/t6042-merge-rename-corner-cases.sh
index
output to alert the user, and this output is
duplicated for each side of the conflict.
Simplify the call by generating this new path in a helper
function.
Signed-off-by: Derrick Stolee
Signed-off-by: Elijah Newren
---
merge-recursive.c | 53 ---
1 file
-by: Elijah Newren
---
t/t6036-recursive-corner-cases.sh| 194 +++
t/t6042-merge-rename-corner-cases.sh | 118
2 files changed, 312 insertions(+)
diff --git a/t/t6036-recursive-corner-cases.sh
b/t/t6036-recursive-corner-cases.sh
index e1cef58f2a
handle_file_collision() to fix all of these issues.
Signed-off-by: Elijah Newren
---
merge-recursive.c| 137 +--
t/t6036-recursive-corner-cases.sh| 24 ++---
t/t6042-merge-rename-corner-cases.sh | 4 +-
3 files changed, 101 insertions(+), 64 deletions
markers increase with each
subsequent nesting.
Subsequent patches which change the rename/add and rename/rename(2to1)
conflict handling will modify the extra_marker_size flag appropriately
for their new needs.
Signed-off-by: Elijah Newren
---
ll-merge.c| 4 +-
ll
w up in
the index of the outer merge at stage 1 if a conflict exists at the outer
level.
Signed-off-by: Elijah Newren
---
merge-recursive.c | 121 ++
1 file changed, 121 insertions(+)
diff --git a/merge-recursive.c b/merge-recursive.c
index f35e3
a three-way content merge on the renamed path, then store
that at either stage 2 or stage 3.
* Note that since the content merge for each rename may have conflicts,
and then we have to merge the two renamed files, we can end up with
nested conflict markers.
Signed-off-by: Elijah
Stolee's coverage reports found a few code blocks for file collision
conflicts that had not previously been covered by testcases; add a few
more testcases to cover those too.
Signed-off-by: Elijah Newren
---
t/t6036-recursive-corner-cases.sh | 51 +
t/t6043-merge
This results in no-net change of behavior, it simply ensures that all
file-collision conflict handling types are being handled the same by
calling the same function.
Signed-off-by: Elijah Newren
---
merge-recursive.c | 29 +
1 file changed, 21 insertions(+), 8
s since v4:
* Merged the two RFC patches into a single patch.
* Added patch submitted by Stolee at the end.
* (The addition of what are the last two patches are also the only
difference since v3)
Derrick Stolee (1):
merge-recursive: combine error handling
Elijah Newren (9):
Add
On Fri, Nov 2, 2018 at 12:09 PM Derrick Stolee wrote:
>
> On 11/2/2018 2:53 PM, Elijah Newren wrote:
> > Major question:
> >* You'll note that I edited the last two patches to mark them as RFC.
> > To be honest, I'm not sure what to do with these. They improv
NOTE: This test added solely to improve code coverage of new code added in
this series.
Signed-off-by: Elijah Newren
---
t/t6043-merge-rename-directories.sh | 37 +
1 file changed, 37 insertions(+)
diff --git a/t/t6043-merge-rename-directories.sh
b/t/t6043-merge
1 - 100 of 1133 matches
Mail list logo