Fix handling of annotated tags and prefer them over lightweight tags, fixes #5555
parent
01885777f3
commit
1bc8b702ca
|
@ -154,9 +154,9 @@ class GitDriver extends VcsDriver
|
||||||
if (null === $this->tags) {
|
if (null === $this->tags) {
|
||||||
$this->tags = array();
|
$this->tags = array();
|
||||||
|
|
||||||
$this->process->execute('git show-ref --tags', $output, $this->repoDir);
|
$this->process->execute('git show-ref --tags --dereference', $output, $this->repoDir);
|
||||||
foreach ($output = $this->process->splitLines($output) as $tag) {
|
foreach ($output = $this->process->splitLines($output) as $tag) {
|
||||||
if ($tag && preg_match('{^([a-f0-9]{40}) refs/tags/(\S+)$}', $tag, $match)) {
|
if ($tag && preg_match('{^([a-f0-9]{40}) refs/tags/(\S+?)(\^\{\})?$}', $tag, $match)) {
|
||||||
$this->tags[$match[2]] = $match[1];
|
$this->tags[$match[2]] = $match[1];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue