about summary refs log tree commit homepage
path: root/lib/PublicInbox/Repo.pm
diff options
context:
space:
mode:
authorEric Wong <e@80x24.org>2017-02-16 23:26:01 +0000
committerEric Wong <e@80x24.org>2017-02-16 23:26:01 +0000
commite7dc3224ad0b497da6ef242e3a9c612c5702514e (patch)
tree1ac252a5fe4b83bc430cb208cee08edb6d9aa631 /lib/PublicInbox/Repo.pm
parent1f34241e5dc94417d49e2c728e0f2ea04ddc39b0 (diff)
downloadpublic-inbox-e7dc3224ad0b497da6ef242e3a9c612c5702514e.tar.gz
The "HEAD" symbolic ref is rarely changed, so
memoize it for now and avoid exposing it in URLs.
Diffstat (limited to 'lib/PublicInbox/Repo.pm')
-rw-r--r--lib/PublicInbox/Repo.pm11
1 files changed, 11 insertions, 0 deletions
diff --git a/lib/PublicInbox/Repo.pm b/lib/PublicInbox/Repo.pm
index ceebe5c4..f0cb4b3d 100644
--- a/lib/PublicInbox/Repo.pm
+++ b/lib/PublicInbox/Repo.pm
@@ -46,4 +46,15 @@ sub cloneurl {
         $self->{cloneurl} = $url;
 }
 
+sub tip {
+        my ($self) = @_;
+        $self->{-tip} ||= do {
+                if ($self->{vcs} eq 'git') {
+                        my $t = $self->{git}->qx(qw(symbolic-ref --short HEAD));
+                        chomp $t;
+                        $t;
+                }
+        };
+}
+
 1;