mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2025-01-23 06:39:41 -05:00
7e81775184
Merging PR may fail because of various problems. The pull request may have a dirty state because there is no transaction when merging a pull request. ref https://github.com/go-gitea/gitea/pull/25741#issuecomment-2074126393 This PR moves all database update operations to post-receive handler for merging a pull request and having a database transaction. That means if database operations fail, then the git merging will fail, the git client will get a fail result. There are already many tests for pull request merging, so we don't need to add a new one. --------- Co-authored-by: wxiaoguang <wxiaoguang@gmail.com> (cherry picked from commit ebf0c969403d91ed80745ff5bd7dfbdb08174fc7) Conflicts: modules/private/hook.go routers/private/hook_post_receive.go trivial conflicts because 263a716cb5 * Performance optimization for git push (#30104) was not cherry-picked and because of |
||
---|---|---|
.. | ||
forgejo | ||
actions.go | ||
admin.go | ||
admin_auth.go | ||
admin_auth_ldap.go | ||
admin_auth_ldap_test.go | ||
admin_auth_oauth.go | ||
admin_auth_stmp.go | ||
admin_regenerate.go | ||
admin_user.go | ||
admin_user_change_password.go | ||
admin_user_create.go | ||
admin_user_delete.go | ||
admin_user_generate_access_token.go | ||
admin_user_list.go | ||
admin_user_must_change_password.go | ||
cert.go | ||
cmd.go | ||
docs.go | ||
doctor.go | ||
doctor_convert.go | ||
doctor_test.go | ||
dump.go | ||
dump_repo.go | ||
dump_test.go | ||
embedded.go | ||
generate.go | ||
hook.go | ||
hook_test.go | ||
keys.go | ||
mailer.go | ||
main.go | ||
main_test.go | ||
manager.go | ||
manager_logging.go | ||
migrate.go | ||
migrate_storage.go | ||
migrate_storage_test.go | ||
restore_repo.go | ||
serv.go | ||
web.go | ||
web_acme.go | ||
web_graceful.go | ||
web_https.go |