From 31a92f6aa47732e93f6685b8d1fd1ac09c1fec44 Mon Sep 17 00:00:00 2001 From: Petr Baudis Date: Tue, 8 Jul 2008 19:48:04 +0200 Subject: Git.pm: Add remote_refs() git-ls-remote frontend This patch also converts the good ole' git-remote.perl to use it. It is otherwise used in the repo.or.cz machinery and I guess other scripts might find it useful too. Unfortunately, git-ls-remote --heads . is subtly different from git-ls-remote . refs/heads/ (since the second matches anywhere in the string, not just at the beginning) so we have to provide interface for both. Signed-off-by: Petr Baudis Signed-off-by: Junio C Hamano --- contrib/examples/git-remote.perl | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) (limited to 'contrib/examples') diff --git a/contrib/examples/git-remote.perl b/contrib/examples/git-remote.perl index b30ed734e7..36bd54c985 100755 --- a/contrib/examples/git-remote.perl +++ b/contrib/examples/git-remote.perl @@ -129,10 +129,7 @@ sub update_ls_remote { return if (($harder == 0) || (($harder == 1) && exists $info->{'LS_REMOTE'})); - my @ref = map { - s|^[0-9a-f]{40}\s+refs/heads/||; - $_; - } $git->command(qw(ls-remote --heads), $info->{'URL'}); + my @ref = map { s|refs/heads/||; $_; } keys %{$git->remote_refs($info->{'URL'}, [ 'heads' ])}; $info->{'LS_REMOTE'} = \@ref; } -- cgit v1.3-5-g9baa