aboutsummaryrefslogtreecommitdiffstats
path: root/modules/setting/setting.go
diff options
context:
space:
mode:
Diffstat (limited to 'modules/setting/setting.go')
-rw-r--r--modules/setting/setting.go29
1 files changed, 12 insertions, 17 deletions
diff --git a/modules/setting/setting.go b/modules/setting/setting.go
index ea0fa73dd0..f7da6baac4 100644
--- a/modules/setting/setting.go
+++ b/modules/setting/setting.go
@@ -34,6 +34,7 @@ import (
_ "github.com/go-macaron/session/redis" // redis plugin for store session
"github.com/go-xorm/core"
"github.com/kballard/go-shellquote"
+ "github.com/mcuadros/go-version"
"gopkg.in/ini.v1"
"strk.kbt.io/projects/go/libravatar"
)
@@ -929,23 +930,7 @@ func NewContext() {
log.Fatal(4, "Error retrieving git version: %v", err)
}
- splitVersion := strings.SplitN(binVersion, ".", 4)
-
- majorVersion, err := strconv.ParseUint(splitVersion[0], 10, 64)
- if err != nil {
- log.Fatal(4, "Error parsing git major version: %v", err)
- }
- minorVersion, err := strconv.ParseUint(splitVersion[1], 10, 64)
- if err != nil {
- log.Fatal(4, "Error parsing git minor version: %v", err)
- }
- revisionVersion, err := strconv.ParseUint(splitVersion[2], 10, 64)
- if err != nil {
- log.Fatal(4, "Error parsing git revision version: %v", err)
- }
-
- if !((majorVersion > 2) || (majorVersion == 2 && minorVersion > 1) ||
- (majorVersion == 2 && minorVersion == 1 && revisionVersion >= 2)) {
+ if !version.Compare(binVersion, "2.1.2", ">=") {
LFS.StartServer = false
log.Error(4, "LFS server support needs at least Git v2.1.2")
@@ -1206,6 +1191,16 @@ func NewContext() {
sec = Cfg.Section("U2F")
U2F.TrustedFacets, _ = shellquote.Split(sec.Key("TRUSTED_FACETS").MustString(strings.TrimRight(AppURL, "/")))
U2F.AppID = sec.Key("APP_ID").MustString(strings.TrimRight(AppURL, "/"))
+
+ binVersion, err := git.BinVersion()
+ if err != nil {
+ log.Fatal(4, "Error retrieving git version: %v", err)
+ }
+
+ if version.Compare(binVersion, "2.9", ">=") {
+ // Explicitly disable credential helper, otherwise Git credentials might leak
+ git.GlobalCommandArgs = append(git.GlobalCommandArgs, "-c", "credential.helper=")
+ }
}
// Service settings