gitweb: Add git_get_rev_name_tags function

Add git_get_rev_name_tags function, for later use in
git_commitdiff('plain') for X-Git-Tag: header.

This function, contrary to the call to
  git_get_following_references($hash, "tags");
_does_ strip "tags/" and returns bare tag name.

Signed-off-by: Jakub Narebski <jnareb@gmail.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
Jakub Narebski 2006-08-24 19:41:23 +02:00 коммит произвёл Junio C Hamano
Родитель 3066c359c6
Коммит 56a322f161
1 изменённых файлов: 16 добавлений и 0 удалений

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

@ -800,6 +800,22 @@ sub git_get_preceding_references {
return @reflist;
}
sub git_get_rev_name_tags {
my $hash = shift || return undef;
open my $fd, "-|", $GIT, "name-rev", "--tags", $hash
or return;
my $name_rev = <$fd>;
close $fd;
if ($name_rev =~ m|^$hash tags/(.*)$|) {
return $1;
} else {
# catches also '$hash undefined' output
return undef;
}
}
## ----------------------------------------------------------------------
## parse to hash functions