if err != nil {
log.Fatal(4, "Fail to parse required Git version: %v", err)
}
- if ver.Compare(reqVer) == -1 {
+ if ver.LessThan(reqVer) {
log.Fatal(4, "Gogs requires Git version greater or equal to 1.7.1")
}
}
func (repo *Repository) commitsCount(id sha1) (int, error) {
- if gitVer.Compare(MustParseVersion("1.8.0")) == -1 {
+ 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))
}
// Compare compares two versions,
-// it returns 1 if original is greater, 1 if original is smaller, 0 if equal.
+// it returns 1 if original is greater, -1 if original is smaller, 0 if equal.
func (v *Version) Compare(that *Version) int {
if v.Major > that.Major {
return 1
return 0
}
+func (v *Version) LessThan(that *Version) bool {
+ return v.Compare(that) < 0
+}
+
// GetVersion returns current Git version installed.
func GetVersion() (*Version, error) {
if gitVer != nil {