Subject: Re: [RFC/PATCH v2] create a skeleton for the command git rebase --status

From: Matthieu Moy <[email-masked]>
Date: Fri, 29 May 2015 17:00:20 +0200

Guillaume Pages <[email-masked]> writes:

> rebase in progress; onto d9d448a You are currently rebasing branch
> 'branche1' on 'd9d448a'.  (fix conflicts and then run "git rebase
> --continue") (use "git rebase --skip" to skip this patch) (use "git
> rebase --abort" to check out the original branch) (5 commits applied,
> 3 remainings) Failed to apply:
>
> 252c273 commit message

You messed-up something with the formatting, but I agree that this would
be nice. I'd reverse order between the hints ("(use ... to ...)") and
the "Failed to apply: ...".

> And during an interactive rebase:
>
> rebase in progress;

This could even become "interactive rebase in progress".

Most of the time, you're supposed to remember whether you ran "git
rebase" with -i, but a typical use-case is when a newbie requests help
like "I don't know what I did, but can you fix it?", and then any
information can be valuable.

> Last commands done (5 commands done) :
>
> pick 62609785 commit message1 reword 85ae9001 new commit message2
>
> (See more at .git/rebase-merge/done)
>
> Next commands to do (3 remainings commands) :
>
> squash 62609785 commit message3 pick 85ae9001 commit message4
>
> (See more at .git/rebase-merge/git-rebase-todo)

Not sure the blank lines are meant to be there, but I wouldn't put them
in the actual output. I'd format it as

Last commands done (5 commands done) :
  pick 62609785 commit message1
  (see more at .git/rebase-merge/done)

(lower-case "see" to be consistant with other hints)

> Is it a good practice to send the user find information in the .git
> directory?

We usually avoid doing that and provide commands to do this (e.g. "git
rebase --edit-todo" instead of asking the user to do $EDITOR
.git/rebase-merge/git-rebase-todo), but the ones you show seem OK to me.

There's already at least one instance of this when a rebase fails:

  Patch failed at 0001 foo
  The copy of the patch that failed is found in:
     /tmp/clone/.git/rebase-apply/patch

-- 
Matthieu Moy
http://www-verimag.imag.fr/~moy/