aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--custom/conf/app.example.ini2
-rw-r--r--docs/content/doc/advanced/config-cheat-sheet.en-us.md1
-rw-r--r--modules/git/git.go6
-rw-r--r--modules/setting/git.go1
4 files changed, 10 insertions, 0 deletions
diff --git a/custom/conf/app.example.ini b/custom/conf/app.example.ini
index 0a25e7e5cd..07ca9f8409 100644
--- a/custom/conf/app.example.ini
+++ b/custom/conf/app.example.ini
@@ -580,6 +580,8 @@ PATH =
;;
;; (Go-Git only) Don't cache objects greater than this in memory. (Set to 0 to disable.)
;LARGE_OBJECT_THRESHOLD = 1048576
+;; Set to true to forcibly set core.protectNTFS=false
+;DISABLE_CORE_PROTECT_NTFS=false
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
diff --git a/docs/content/doc/advanced/config-cheat-sheet.en-us.md b/docs/content/doc/advanced/config-cheat-sheet.en-us.md
index d224533e96..f02d8cbc37 100644
--- a/docs/content/doc/advanced/config-cheat-sheet.en-us.md
+++ b/docs/content/doc/advanced/config-cheat-sheet.en-us.md
@@ -842,6 +842,7 @@ NB: You must have `DISABLE_ROUTER_LOG` set to `false` for this option to take ef
- `VERBOSE_PUSH`: **true**: Print status information about pushes as they are being processed.
- `VERBOSE_PUSH_DELAY`: **5s**: Only print verbose information if push takes longer than this delay.
- `LARGE_OBJECT_THRESHOLD`: **1048576**: (Go-Git only), don't cache objects greater than this in memory. (Set to 0 to disable.)
+- `DISABLE_CORE_PROTECT_NTFS`: **false** Set to true to forcibly set `core.protectNTFS` to false.
## Git - Timeout settings (`git.timeout`)
- `DEFAUlT`: **360**: Git operations default timeout seconds.
- `MIGRATE`: **600**: Migrate external repositories timeout seconds.
diff --git a/modules/git/git.go b/modules/git/git.go
index 7ab11736e8..e6c34979e8 100644
--- a/modules/git/git.go
+++ b/modules/git/git.go
@@ -204,6 +204,12 @@ func Init(ctx context.Context) error {
return err
}
}
+ if setting.Git.DisableCoreProtectNTFS {
+ if err := checkAndSetConfig("core.protectntfs", "false", true); err != nil {
+ return err
+ }
+ GlobalCommandArgs = append(GlobalCommandArgs, "-c", "core.protectntfs=false")
+ }
return nil
}
diff --git a/modules/setting/git.go b/modules/setting/git.go
index aa838a8d64..aaa65ed81c 100644
--- a/modules/setting/git.go
+++ b/modules/setting/git.go
@@ -26,6 +26,7 @@ var (
EnableAutoGitWireProtocol bool
PullRequestPushMessage bool
LargeObjectThreshold int64
+ DisableCoreProtectNTFS bool
Timeout struct {
Default int
Migrate int