Merge branch 'mg/advice-statushints'

* mg/advice-statushints:
  wt-status: take advice.statusHints seriously
  t7508: test advice.statusHints

Conflicts:
	wt-status.c
This commit is contained in:
Junio C Hamano 2010-05-21 04:02:23 -07:00
commit 82e7ee7351
2 changed files with 60 additions and 6 deletions

View File

@ -68,6 +68,34 @@ test_expect_success 'status (2)' '
'
cat >expect <<\EOF
# On branch master
# Changes to be committed:
# new file: dir2/added
#
# Changed but not updated:
# modified: dir1/modified
#
# Untracked files:
# dir1/untracked
# dir2/modified
# dir2/untracked
# expect
# output
# untracked
EOF
git config advice.statusHints false
test_expect_success 'status (advice.statusHints false)' '
git status >output &&
test_cmp expect output
'
git config --unset advice.statusHints
cat >expect <<\EOF
M dir1/modified
A dir2/added
@ -115,6 +143,23 @@ test_expect_success 'status (status.showUntrackedFiles no)' '
test_cmp expect output
'
cat >expect <<EOF
# On branch master
# Changes to be committed:
# new file: dir2/added
#
# Changed but not updated:
# modified: dir1/modified
#
# Untracked files not listed
EOF
git config advice.statusHints false
test_expect_success 'status -uno (advice.statusHints false)' '
git status -uno >output &&
test_cmp expect output
'
git config --unset advice.statusHints
cat >expect << EOF
M dir1/modified
A dir2/added

View File

@ -651,7 +651,9 @@ void wt_status_print(struct wt_status *s)
if (s->show_ignored_files)
wt_status_print_other(s, &s->ignored, "Ignored", "add -f");
} else if (s->commitable)
fprintf(s->fp, "# Untracked files not listed (use -u option to show untracked files)\n");
fprintf(s->fp, "# Untracked files not listed%s\n",
advice_status_hints
? " (use -u option to show untracked files)" : "");
if (s->verbose)
wt_status_print_verbose(s);
@ -661,15 +663,22 @@ void wt_status_print(struct wt_status *s)
else if (s->nowarn)
; /* nothing */
else if (s->workdir_dirty)
printf("no changes added to commit (use \"git add\" and/or \"git commit -a\")\n");
printf("no changes added to commit%s\n",
advice_status_hints
? " (use \"git add\" and/or \"git commit -a\")" : "");
else if (s->untracked.nr)
printf("nothing added to commit but untracked files present (use \"git add\" to track)\n");
printf("nothing added to commit but untracked files present%s\n",
advice_status_hints
? " (use \"git add\" to track)" : "");
else if (s->is_initial)
printf("nothing to commit (create/copy files and use \"git add\" to track)\n");
printf("nothing to commit%s\n", advice_status_hints
? " (create/copy files and use \"git add\" to track)" : "");
else if (!s->show_untracked_files)
printf("nothing to commit (use -u to show untracked files)\n");
printf("nothing to commit%s\n", advice_status_hints
? " (use -u to show untracked files)" : "");
else
printf("nothing to commit (working directory clean)\n");
printf("nothing to commit%s\n", advice_status_hints
? " (working directory clean)" : "");
}
}