0
0
mirror of https://github.com/go-gitea/gitea.git synced 2025-09-06 14:04:19 +02:00
Lunny Xiao d2e994db2c
Move git config/remote to gitrepo package and add global lock to resolve possible conflict when updating repository git config file (#35151)
Partially fix #32018 

`git config` and `git remote` write operations create a temporary file
named `config.lock`. Since these operations are not atomic, they must
not be run in parallel. If two requests attempt to modify the same
repository concurrently—such as during a compare operation—one may fail
due to the presence of an existing `config.lock` file.

In cases where `config.lock` is left behind due to an unexpected program
exit, a global lock mechanism could allow us to safely remove the stale
lock file when a related error is detected. While this behavior is not
yet implemented in this PR, it is planned for a future enhancement.

---------

Signed-off-by: wxiaoguang <wxiaoguang@gmail.com>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
2025-09-01 18:47:04 +00:00
..
2025-08-27 11:00:01 +00:00
2025-08-27 11:00:01 +00:00
2025-03-31 01:53:48 -04:00
2025-08-27 11:00:01 +00:00
2025-04-01 10:14:01 +00:00
2025-04-01 10:14:01 +00:00
2025-07-30 07:08:59 +00:00
2025-07-30 07:08:59 +00:00

Git Module

This module is merged from https://github.com/go-gitea/git which is a Go module to access Git through shell commands. Now it's a part of gitea's main repository for easier pull request.