forgejo/modules
zeripath d6b96627c1
Add setting to disable the git apply step in test patch (#22130)
For a long time Gitea has tested PR patches using a git apply --check
method, and in fact prior to the introduction of a read-tree assisted
three-way merge in #18004, this was the only way of checking patches.

Since #18004, the git apply --check method has been a fallback method,
only used when the read-tree three-way merge method has detected a
conflict. The read-tree assisted three-way merge method is much faster
and less resource intensive method of detecting conflicts. #18004 kept
the git apply method around because it was thought possible that this
fallback might be able to rectify conflicts that the read-tree three-way
merge detected. I am not certain if this could ever be the case.

Given the uncertainty here and the now relative stability of the
read-tree method - this PR makes using this fallback optional and
disables it by default. The hope is that users will not notice any
significant difference in conflict detection and we will be able to
remove the git apply fallback in future, and/or improve the read-tree
three-way merge method to catch any conflicts that git apply method
might have been able to fix.

An additional benefit is that patch checking should be significantly
less resource intensive and much quicker.

(See
https://github.com/go-gitea/gitea/issues/22083\#issuecomment-1347961737)

Ref #22083

Signed-off-by: Andrew Thornton <art27@cantab.net>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: KN4CK3R <admin@oldschoolhack.me>
2022-12-19 19:37:15 +08:00
..
activitypub Remove deprecated packages & staticcheck fixes (#22012) 2022-12-02 17:06:23 -05:00
analyze Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
auth Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
avatar Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
base Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
cache Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
charset Ensure that plain files are rendered correctly even when containing ambiguous characters (#22017) 2022-12-17 22:22:25 +02:00
container Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
context Rename almost all Ctx functions (#22071) 2022-12-10 10:46:31 +08:00
convert Rename almost all Ctx functions (#22071) 2022-12-10 10:46:31 +08:00
csv Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
doctor Add doctor command for full GC of LFS (#21978) 2022-12-15 20:44:16 +00:00
emoji Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
eventsource Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
generate Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
git On tag/branch-exist check, dont panic if repo is nil (#21787) 2022-12-04 10:28:57 +00:00
gitgraph Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
graceful Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
hcaptcha Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
highlight Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
hostmatcher Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
html Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
httpcache Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
httplib Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
indexer refactor some functions to support ctx as first parameter (#21878) 2022-12-03 10:48:26 +08:00
issue/template Use path not filepath in template filenames (#21993) 2022-12-02 07:56:51 +08:00
json Update gitea-vet to check FSFE REUSE (#22004) 2022-12-02 22:14:57 +08:00
lfs Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
log Update go dev dependencies (#22064) 2022-12-08 16:21:37 +08:00
markup Use multi reader instead to concat strings (#22099) 2022-12-12 11:03:54 +08:00
mcaptcha Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
metrics Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
migration Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
mirror Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
nosql Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
notification Add API management for issue/pull and comment attachments (#21783) 2022-12-09 14:35:56 +08:00
options Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
packages Replace fmt.Sprintf with hex.EncodeToString (#21960) 2022-11-28 11:19:18 +00:00
paginator Update gitea-vet to check FSFE REUSE (#22004) 2022-12-02 22:14:57 +08:00
password Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
pprof Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
private Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
process Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
proxy Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
proxyprotocol Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
public Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
queue Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
recaptcha Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
references Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
regexplru Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
repository Rename almost all Ctx functions (#22071) 2022-12-10 10:46:31 +08:00
secret Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
session Update gitea-vet to check FSFE REUSE (#22004) 2022-12-02 22:14:57 +08:00
setting Add setting to disable the git apply step in test patch (#22130) 2022-12-19 19:37:15 +08:00
sitemap Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
ssh Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
storage Local storage should not store files as executable (#22162) 2022-12-19 08:50:36 +08:00
structs Add API management for issue/pull and comment attachments (#21783) 2022-12-09 14:35:56 +08:00
svg Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
sync Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
system Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
templates refactor some functions to support ctx as first parameter (#21878) 2022-12-03 10:48:26 +08:00
test refactor some functions to support ctx as first parameter (#21878) 2022-12-03 10:48:26 +08:00
timeutil Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
translation Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
typesniffer Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
updatechecker Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
upload Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
uri Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
user Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
util Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
validation Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
watcher Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
web refactor bind functions based on generics (#22055) 2022-12-12 16:09:26 +08:00