| return $this->cache['tags'];␊ |
| }␊ |
| $cmd = Pluf::f('idf_exec_cmd_prefix', '')␊ |
| .sprintf('GIT_DIR=%s %s tag',␊ |
| .sprintf('GIT_DIR=%s %s for-each-ref --format="%%(taggerdate:iso)%%(committerdate:iso) %%(objectname) %%(refname)" refs/tags',␊ |
| escapeshellarg($this->repo),␊ |
| Pluf::f('git_path', 'git'));␊ |
| self::exec('IDF_Scm_Git::getTags', $cmd, $out, $return);␊ |
|
| $cmd, $return,␊ |
| implode("\n", $out)));␊ |
| }␊ |
| rsort($out);␊ |
| $res = array();␊ |
| foreach ($out as $b) {␊ |
| if (false !== strpos($b, '/')) {␊ |
| $res[$this->getCommit($b)->commit] = $b;␊ |
| $elts = explode(' ', $b, 5);␊ |
| $tag = substr(trim($elts[4]), 10);␊ |
| if (false !== strpos($tag, '/')) {␊ |
| $res[$elts[3]] = $b;␊ |
| } else {␊ |
| $res[$b] = '';␊ |
| $res[$tag] = '';␊ |
| }␊ |
| }␊ |
| $this->cache['tags'] = $res;␊ |