summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLibravatar Shawn O. Pearce <spearce@spearce.org>2006-12-15 21:53:09 -0500
committerLibravatar Junio C Hamano <junkio@cox.net>2006-12-15 22:31:01 -0800
commitaeb80c70ec2baebbf107de0ea5293984798ddd24 (patch)
treed3b28c73075fefae827caa5fbfcc8d137df60b9f
parentMake git-diff documentation use [--] when it should. (diff)
downloadtgif-aeb80c70ec2baebbf107de0ea5293984798ddd24.tar.xz
Suggest use of "git add file1 file2" when there is nothing to commit.
If a user modifies files and runs 'git commit' (without the very useful -a option) and they have not yet updated the index they are probably coming from another SCM-like tool which would perform the same as 'git commit -a' in this case. Showing the user their current status and a final line of "nothing to commit" is not very reassuring, as the user might believe that Git did not recognize their files were modified. Instead we can suggest as part of the 'nothing to commit' message that the user invoke 'git add' to add files to their next commit. Suggested by Andy Parkins' Git 'niggles' list (<200612132237.10051.andyparkins@gmail.com>). Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
-rwxr-xr-xgit-commit.sh2
-rw-r--r--wt-status.c11
2 files changed, 7 insertions, 6 deletions
diff --git a/git-commit.sh b/git-commit.sh
index a30bda19d5..6bce41af4d 100755
--- a/git-commit.sh
+++ b/git-commit.sh
@@ -520,7 +520,7 @@ then
current="$(git-rev-parse --verify HEAD)"
else
if [ -z "$(git-ls-files)" ]; then
- echo >&2 Nothing to commit
+ echo >&2 'nothing to commit (use "git add file1 file2" to include for commit)'
exit 1
fi
PARENTS=""
diff --git a/wt-status.c b/wt-status.c
index 6e9414dbb0..2173d4f668 100644
--- a/wt-status.c
+++ b/wt-status.c
@@ -15,6 +15,7 @@ static char wt_status_colors[][COLOR_MAXLEN] = {
"\033[31m", /* WT_STATUS_CHANGED: red */
"\033[31m", /* WT_STATUS_UNTRACKED: red */
};
+static const char* use_add_msg = "use \"git add file1 file2\" to include for commit";
static int parse_status_slot(const char *var, int offset)
{
@@ -162,8 +163,7 @@ static void wt_status_print_changed_cb(struct diff_queue_struct *q,
{
int i;
if (q->nr)
- wt_status_print_header("Changed but not updated",
- "use git-add on files to include for commit");
+ wt_status_print_header("Changed but not updated", use_add_msg);
for (i = 0; i < q->nr; i++)
wt_status_print_filepair(WT_STATUS_CHANGED, q->queue[i]);
if (q->nr)
@@ -249,8 +249,7 @@ static void wt_status_print_untracked(const struct wt_status *s)
continue;
}
if (!shown_header) {
- wt_status_print_header("Untracked files",
- "use \"git add\" to add to commit");
+ wt_status_print_header("Untracked files", use_add_msg);
shown_header = 1;
}
color_printf(color(WT_STATUS_HEADER), "#\t");
@@ -292,7 +291,9 @@ void wt_status_print(struct wt_status *s)
if (s->verbose && !s->is_initial)
wt_status_print_verbose(s);
if (!s->commitable)
- printf("%s\n", s->amend ? "# No changes" : "nothing to commit");
+ printf("%s (%s)\n",
+ s->amend ? "# No changes" : "nothing to commit",
+ use_add_msg);
}
int git_status_config(const char *k, const char *v)