X-Git-Url: http://dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2Fcluster.pl;h=3b931a0fba1b8407ee37592d65cd16013e462b27;hb=4868adf8dfa83d92e60e214b28dee3bd89cb00a6;hp=5b65717e705ebee2634f3c87f3cc6b2e3555d55b;hpb=56478c613d3e5d7c6ca270fc41b211e3dec086a5;p=spider.git diff --git a/perl/cluster.pl b/perl/cluster.pl index 5b65717e..3b931a0f 100755 --- a/perl/cluster.pl +++ b/perl/cluster.pl @@ -370,7 +370,7 @@ if (DXSql::init($dsn)) { $dbh = $dbh->connect($dsn, $dbuser, $dbpass) if $dbh; } -# try to load Encode +# try to load Encode and Git { local $^W = 0; my $w = $SIG{__DIE__}; @@ -380,6 +380,23 @@ if (DXSql::init($dsn)) { import Encode; $can_encode = 1; } + eval { require Git; }; + unless ($@) { + import Git; + + # determine the real version number + my $repo = Git->repository(Directory => "$root/.git"); + if ($repo) { + my $desc = $repo->command_oneline(['describe'], STDERR => 0); + if ($desc) { + my ($v, $s, $b, $g) = $desc =~ /^([\d.]+)(?:\.(\d+))?-(\d+)-g([0-9a-f]+)/; + $version = $v; + $subversion = $s || 0; + $build = $b || 0; + $gitversion = "$g\[r]"; + } + } + } $SIG{__DIE__} = $w; }