Web lists-archives.com

Re: [PATCH] status: add an empty line when there is no hint




Hi Phil,

Thank you for the review! I will fix the test cases and submit a new
version of my patch.

Best,
John Lin

Phil Hord <phil.hord@xxxxxxxxx> 於 2019年4月30日 週二 上午11:12寫道:
>
> You should probably add some test that demonstrates what your change
> intends to do.  For that matter, though, your test already breaks at
> least two tests in t7508-status.sh:
>
> not ok 14 - status (advice.statusHints false)
> not ok 23 - status -uno (advice.statusHints false)
>
> Phil
>
> On Tue, Apr 23, 2019 at 2:21 AM John Lin <johnlinp@xxxxxxxxx> wrote:
> >
> > When typing "git status", there is an empty line between
> > the "Changes not staged for commit:" block and the list
> > of changed files. However, when typing "git commit" with
> > no files added, there are no empty lines between them.
> >
> > This patch adds empty lines in the above case and some
> > similar cases.
> >
> > Signed-off-by: John Lin <johnlinp@xxxxxxxxx>
> > ---
> >  wt-status.c | 12 ++++++++----
> >  1 file changed, 8 insertions(+), 4 deletions(-)
> >
> > diff --git a/wt-status.c b/wt-status.c
> > index 445a36204a..0766e3ee12 100644
> > --- a/wt-status.c
> > +++ b/wt-status.c
> > @@ -175,7 +175,7 @@ static void wt_longstatus_print_unmerged_header(struct wt_status *s)
> >         }
> >
> >         if (!s->hints)
> > -               return;
> > +               goto conclude;
> >         if (s->whence != FROM_COMMIT)
> >                 ;
> >         else if (!s->is_initial)
> > @@ -193,6 +193,7 @@ static void wt_longstatus_print_unmerged_header(struct wt_status *s)
> >         } else {
> >                 status_printf_ln(s, c, _("  (use \"git add/rm <file>...\" as appropriate to mark resolution)"));
> >         }
> > +conclude:
> >         status_printf_ln(s, c, "%s", "");
> >  }
> >
> > @@ -202,13 +203,14 @@ static void wt_longstatus_print_cached_header(struct wt_status *s)
> >
> >         status_printf_ln(s, c, _("Changes to be committed:"));
> >         if (!s->hints)
> > -               return;
> > +               goto conclude;
> >         if (s->whence != FROM_COMMIT)
> >                 ; /* NEEDSWORK: use "git reset --unresolve"??? */
> >         else if (!s->is_initial)
> >                 status_printf_ln(s, c, _("  (use \"git reset %s <file>...\" to unstage)"), s->reference);
> >         else
> >                 status_printf_ln(s, c, _("  (use \"git rm --cached <file>...\" to unstage)"));
> > +conclude:
> >         status_printf_ln(s, c, "%s", "");
> >  }
> >
> > @@ -220,7 +222,7 @@ static void wt_longstatus_print_dirty_header(struct wt_status *s,
> >
> >         status_printf_ln(s, c, _("Changes not staged for commit:"));
> >         if (!s->hints)
> > -               return;
> > +               goto conclude;
> >         if (!has_deleted)
> >                 status_printf_ln(s, c, _("  (use \"git add <file>...\" to update what will be committed)"));
> >         else
> > @@ -228,6 +230,7 @@ static void wt_longstatus_print_dirty_header(struct wt_status *s,
> >         status_printf_ln(s, c, _("  (use \"git checkout -- <file>...\" to discard changes in working directory)"));
> >         if (has_dirty_submodules)
> >                 status_printf_ln(s, c, _("  (commit or discard the untracked or modified content in submodules)"));
> > +conclude:
> >         status_printf_ln(s, c, "%s", "");
> >  }
> >
> > @@ -238,8 +241,9 @@ static void wt_longstatus_print_other_header(struct wt_status *s,
> >         const char *c = color(WT_STATUS_HEADER, s);
> >         status_printf_ln(s, c, "%s:", what);
> >         if (!s->hints)
> > -               return;
> > +               goto conclude;
> >         status_printf_ln(s, c, _("  (use \"git %s <file>...\" to include in what will be committed)"), how);
> > +conclude:
> >         status_printf_ln(s, c, "%s", "");
> >  }
> >
> > --
> > 2.21.0
> >