summaryrefslogtreecommitdiff
path: root/builtin
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2018-08-27 21:33:42 (GMT)
committerJunio C Hamano <gitster@pobox.com>2018-08-27 21:33:42 (GMT)
commitd89db6f4c3fceea7bc9e66823c7a04920e95ac1d (patch)
treebafdcec28f0fd91ad921d331e611b7836ed109cc /builtin
parent9b7373257740e2eeeb6593261f4af29caba2ba9f (diff)
parent560ae1c164ad040a389ccc47834dce8c15447294 (diff)
downloadgit-d89db6f4c3fceea7bc9e66823c7a04920e95ac1d.zip
git-d89db6f4c3fceea7bc9e66823c7a04920e95ac1d.tar.gz
git-d89db6f4c3fceea7bc9e66823c7a04920e95ac1d.tar.bz2
Merge branch 'sm/branch-sort-config'
"git branch --list" learned to take the default sort order from the 'branch.sort' configuration variable, just like "git tag --list" pays attention to 'tag.sort'. * sm/branch-sort-config: branch: support configuring --sort via .gitconfig
Diffstat (limited to 'builtin')
-rw-r--r--builtin/branch.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/builtin/branch.c b/builtin/branch.c
index 4fc55c3..bbd006a 100644
--- a/builtin/branch.c
+++ b/builtin/branch.c
@@ -74,6 +74,14 @@ define_list_config_array(color_branch_slots);
static int git_branch_config(const char *var, const char *value, void *cb)
{
const char *slot_name;
+ struct ref_sorting **sorting_tail = (struct ref_sorting **)cb;
+
+ if (!strcmp(var, "branch.sort")) {
+ if (!value)
+ return config_error_nonbool(var);
+ parse_ref_sorting(sorting_tail, value);
+ return 0;
+ }
if (starts_with(var, "column."))
return git_column_config(var, value, "branch", &colopts);
@@ -653,7 +661,7 @@ int cmd_branch(int argc, const char **argv, const char *prefix)
if (argc == 2 && !strcmp(argv[1], "-h"))
usage_with_options(builtin_branch_usage, options);
- git_config(git_branch_config, NULL);
+ git_config(git_branch_config, sorting_tail);
track = git_branch_track;