aboutsummaryrefslogtreecommitdiff
path: root/modules/git/repo_commit.go
diff options
context:
space:
mode:
authorMichael Boke <michael@mbict.nl>2014-10-03 22:51:07 +0200
committerMichael Boke <michael@mbict.nl>2014-10-03 22:51:07 +0200
commitba1270df2d3d835b397317f133963e7b517242f1 (patch)
tree1265a142a1fd9951d30ae11648e7fbfb5806e594 /modules/git/repo_commit.go
parentba0feadc34400cb91ff23f66096884d862651cdd (diff)
parent405ee14711ab946bd709ec28a526890c40cbc03b (diff)
Merge remote-tracking branch 'upstream/master'
Conflicts: conf/app.ini
Diffstat (limited to 'modules/git/repo_commit.go')
-rw-r--r--modules/git/repo_commit.go12
1 files changed, 10 insertions, 2 deletions
diff --git a/modules/git/repo_commit.go b/modules/git/repo_commit.go
index eebe3dd0..7c47b53d 100644
--- a/modules/git/repo_commit.go
+++ b/modules/git/repo_commit.go
@@ -40,11 +40,11 @@ func (repo *Repository) GetCommitIdOfTag(tagName string) (string, error) {
}
func (repo *Repository) GetCommitOfTag(tagName string) (*Commit, error) {
- commitId, err := repo.GetCommitIdOfTag(tagName)
+ tag, err := repo.GetTag(tagName)
if err != nil {
return nil, err
}
- return repo.GetCommit(commitId)
+ return tag.Commit()
}
// Parse commit information from the (uncompressed) raw
@@ -137,6 +137,14 @@ func (repo *Repository) GetCommit(commitId string) (*Commit, error) {
}
func (repo *Repository) commitsCount(id sha1) (int, error) {
+ if gitVer.LessThan(MustParseVersion("1.8.0")) {
+ stdout, stderr, err := com.ExecCmdDirBytes(repo.Path, "git", "log", "--pretty=format:''", id.String())
+ if err != nil {
+ return 0, errors.New(string(stderr))
+ }
+ return len(bytes.Split(stdout, []byte("\n"))), nil
+ }
+
stdout, stderr, err := com.ExecCmdDir(repo.Path, "git", "rev-list", "--count", id.String())
if err != nil {
return 0, errors.New(stderr)