git-remote: list branches in vertical lists

Previously, branches were listed on a single line in each section. But
if there are many branches, then horizontal, line-wrapped lists are very
inconvenient to scan for a human. This makes the lists vertical, i.e one
branch per line is printed.

Since "git remote" is porcelain, we can easily make this
backwards-incompatible change.

Signed-off-by: Johannes Sixt <j6t@kdbg.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Johannes Sixt 2008-10-22 09:39:47 +02:00 коммит произвёл Junio C Hamano
Родитель f55527f802
Коммит 20244ea2d0
3 изменённых файлов: 17 добавлений и 12 удалений

Просмотреть файл

@ -4356,7 +4356,9 @@ $ git remote show example # get details
* remote example
URL: git://example.com/project.git
Tracked remote branches
master next ...
master
next
...
$ git fetch example # update branches from example
$ git branch -r # list all remote branches
-----------------------------------------------

Просмотреть файл

@ -412,10 +412,9 @@ static void show_list(const char *title, struct string_list *list,
return;
printf(title, list->nr > 1 ? "es" : "", extra_arg);
printf("\n ");
for (i = 0; i < list->nr; i++)
printf("%s%s", i ? " " : "", list->items[i].string);
printf("\n");
for (i = 0; i < list->nr; i++)
printf(" %s\n", list->items[i].string);
}
static int get_remote_ref_states(const char *name,
@ -511,17 +510,17 @@ static int show(int argc, const char **argv)
show_list(" Tracked remote branch%s", &states.tracked, "");
if (states.remote->push_refspec_nr) {
printf(" Local branch%s pushed with 'git push'\n ",
printf(" Local branch%s pushed with 'git push'\n",
states.remote->push_refspec_nr > 1 ?
"es" : "");
for (i = 0; i < states.remote->push_refspec_nr; i++) {
struct refspec *spec = states.remote->push + i;
printf(" %s%s%s%s", spec->force ? "+" : "",
printf(" %s%s%s%s\n",
spec->force ? "+" : "",
abbrev_branch(spec->src),
spec->dst ? ":" : "",
spec->dst ? abbrev_branch(spec->dst) : "");
}
printf("\n");
}
/* NEEDSWORK: free remote */

Просмотреть файл

@ -28,7 +28,7 @@ tokens_match () {
}
check_remote_track () {
actual=$(git remote show "$1" | sed -n -e '$p') &&
actual=$(git remote show "$1" | sed -e '1,/Tracked/d') &&
shift &&
tokens_match "$*" "$actual"
}
@ -115,9 +115,11 @@ cat > test/expect << EOF
New remote branch (next fetch will store in remotes/origin)
master
Tracked remote branches
side master
side
master
Local branches pushed with 'git push'
master:upstream +refs/tags/lastbackup
master:upstream
+refs/tags/lastbackup
EOF
test_expect_success 'show' '
@ -144,9 +146,11 @@ cat > test/expect << EOF
Remote branch merged with 'git pull' while on branch master
master
Tracked remote branches
master side
master
side
Local branches pushed with 'git push'
master:upstream +refs/tags/lastbackup
master:upstream
+refs/tags/lastbackup
EOF
test_expect_success 'show -n' '