diff options
Diffstat (limited to 'modules/setting')
-rw-r--r-- | modules/setting/setting.go | 42 |
1 files changed, 21 insertions, 21 deletions
diff --git a/modules/setting/setting.go b/modules/setting/setting.go index c10f165c8e..23304453d2 100644 --- a/modules/setting/setting.go +++ b/modules/setting/setting.go @@ -693,6 +693,27 @@ func createPIDFile(pidPath string) { } } +// CheckLFSVersion will check lfs version, if not satisfied, then disable it. +func CheckLFSVersion() { + if LFS.StartServer { + //Disable LFS client hooks if installed for the current OS user + //Needs at least git v2.1.2 + + binVersion, err := git.BinVersion() + if err != nil { + log.Fatal(4, "Error retrieving git version: %v", err) + } + + if !version.Compare(binVersion, "2.1.2", ">=") { + LFS.StartServer = false + log.Error(4, "LFS server support needs at least Git v2.1.2") + } else { + git.GlobalCommandArgs = append(git.GlobalCommandArgs, "-c", "filter.lfs.required=", + "-c", "filter.lfs.smudge=", "-c", "filter.lfs.clean=") + } + } +} + // NewContext initializes configuration context. // NOTE: do not print any log except error. func NewContext() { @@ -888,7 +909,6 @@ func NewContext() { LFS.HTTPAuthExpiry = sec.Key("LFS_HTTP_AUTH_EXPIRY").MustDuration(20 * time.Minute) if LFS.StartServer { - if err := os.MkdirAll(LFS.ContentPath, 0700); err != nil { log.Fatal(4, "Failed to create '%s': %v", LFS.ContentPath, err) } @@ -922,26 +942,6 @@ func NewContext() { return } } - - //Disable LFS client hooks if installed for the current OS user - //Needs at least git v2.1.2 - - binVersion, err := git.BinVersion() - if err != nil { - log.Fatal(4, "Error retrieving git version: %v", err) - } - - if !version.Compare(binVersion, "2.1.2", ">=") { - - LFS.StartServer = false - log.Error(4, "LFS server support needs at least Git v2.1.2") - - } else { - - git.GlobalCommandArgs = append(git.GlobalCommandArgs, "-c", "filter.lfs.required=", - "-c", "filter.lfs.smudge=", "-c", "filter.lfs.clean=") - - } } sec = Cfg.Section("security") |