summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStephen Kent <smkent@smkent.net>2017-04-22 05:42:02 (GMT)
committerJunio C Hamano <gitster@pobox.com>2017-04-28 02:50:52 (GMT)
commit93fdf301de0daa57fd6a694ad4637ec7a3a1041c (patch)
tree0dd9a364d094cbfb01a7edff145169fc7c41d3d3
parent75177c8591aee23374c2ead9c9505ce989a8eec2 (diff)
downloadgit-93fdf301de0daa57fd6a694ad4637ec7a3a1041c.zip
git-93fdf301de0daa57fd6a694ad4637ec7a3a1041c.tar.gz
git-93fdf301de0daa57fd6a694ad4637ec7a3a1041c.tar.bz2
status: add color config slots for branch info in "--short --branch"
Add color config slots to be used in the status short-format when displaying local and remote tracking branch information. [jc: rebased on top of Peff's fix to 'git status' and tweaked the test to check both local and remote-tracking branch output] Signed-off-by: Stephen Kent <smkent@smkent.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--Documentation/config.txt5
-rw-r--r--builtin/commit.c4
-rw-r--r--contrib/completion/git-completion.bash2
-rwxr-xr-xt/t7508-status.sh6
4 files changed, 14 insertions, 3 deletions
diff --git a/Documentation/config.txt b/Documentation/config.txt
index 475e874..96e9cf8 100644
--- a/Documentation/config.txt
+++ b/Documentation/config.txt
@@ -1137,7 +1137,10 @@ color.status.<slot>::
`untracked` (files which are not tracked by Git),
`branch` (the current branch),
`nobranch` (the color the 'no branch' warning is shown in, defaulting
- to red), or
+ to red),
+ `localBranch` or `remoteBranch` (the local and remote branch names,
+ respectively, when branch and tracking information is displayed in the
+ status short-format), or
`unmerged` (files which have unmerged changes).
color.ui::
diff --git a/builtin/commit.c b/builtin/commit.c
index 1d805f5..9028bfa 100644
--- a/builtin/commit.c
+++ b/builtin/commit.c
@@ -1263,6 +1263,10 @@ static int parse_status_slot(const char *slot)
return WT_STATUS_NOBRANCH;
if (!strcasecmp(slot, "unmerged"))
return WT_STATUS_UNMERGED;
+ if (!strcasecmp(slot, "localBranch"))
+ return WT_STATUS_LOCAL_BRANCH;
+ if (!strcasecmp(slot, "remoteBranch"))
+ return WT_STATUS_REMOTE_BRANCH;
return -1;
}
diff --git a/contrib/completion/git-completion.bash b/contrib/completion/git-completion.bash
index b617019..72c6d58 100644
--- a/contrib/completion/git-completion.bash
+++ b/contrib/completion/git-completion.bash
@@ -2378,7 +2378,9 @@ _git_config ()
color.status.added
color.status.changed
color.status.header
+ color.status.localBranch
color.status.nobranch
+ color.status.remoteBranch
color.status.unmerged
color.status.untracked
color.status.updated
diff --git a/t/t7508-status.sh b/t/t7508-status.sh
index a000ed4..567c4d4 100755
--- a/t/t7508-status.sh
+++ b/t/t7508-status.sh
@@ -661,7 +661,9 @@ test_expect_success 'status --porcelain ignores relative paths setting' '
test_expect_success 'setup unique colors' '
git config status.color.untracked blue &&
- git config status.color.branch green
+ git config status.color.branch green &&
+ git config status.color.localBranch yellow &&
+ git config status.color.remoteBranch cyan
'
@@ -730,7 +732,7 @@ test_expect_success 'status -s with color.status' '
'
cat >expect <<\EOF
-## <GREEN>master<RESET>...<RED>upstream<RESET> [ahead <GREEN>1<RESET>, behind <RED>2<RESET>]
+## <YELLOW>master<RESET>...<CYAN>upstream<RESET> [ahead <YELLOW>1<RESET>, behind <CYAN>2<RESET>]
<RED>M<RESET> dir1/modified
<GREEN>A<RESET> dir2/added
<BLUE>??<RESET> dir1/untracked