gitea/modules/git
Lunny Xiao 32b97b3ce8
Uniform all temporary directories and allow customizing temp path (#32352)
This PR uniform all temporary directory usage so that it will be easier
to manage.

Relate to #31792 

- [x] Added a new setting to allow users to configure the global
temporary directory.
- [x] Move all temporary files and directories to be placed under
os.Temp()/gitea.
- [x] `setting.Repository.Local.LocalCopyPath` now will be
`setting.TempPath/local-repo` and the customized path is removed.
```diff
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-;[repository.local]
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-;;
-;; Path for local repository copy. Defaults to  TEMP_PATH + `local-repo`, this is deprecated and cannot be changed
-;LOCAL_COPY_PATH = local-repo
```

- [x] `setting.Repository.Upload.TempPath` now will be
`settting.TempPath/uploads` and the customized path is removed.
```diff
;[repository.upload]
-;;
-;; Path for uploads. Defaults to TEMP_PATH + `uploads`
-;TEMP_PATH = uploads
```

- [x] `setting.Packages.ChunkedUploadPath` now will be
`settting.TempPath/package-upload` and the customized path is removed.
```diff
;[packages]
-;;
-;; Path for chunked uploads. Defaults it's `package-upload` under `TEMP_PATH` unless it's an absolute path.
-;CHUNKED_UPLOAD_PATH = package-upload
```

- [x] `setting.SSH.KeyTestPath` now will be
`settting.TempPath/ssh_key_test` and the customized path is removed.
```diff
[server]
-;;
-;; Directory to create temporary files in when testing public keys using ssh-keygen,
-;; default is the system temporary directory.
-;SSH_KEY_TEST_PATH =
```

TODO:
- [ ] setting.PprofDataPath haven't been changed because it may need to
be kept until somebody read it but temp path may be clean up any time.

---------

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
2025-04-08 16:15:28 +00:00
..
foreachref
internal
pipeline Remove context from git struct (#33793) 2025-03-04 11:56:11 -08:00
tests/repos Inherit submodules from template repository content (#16237) 2025-01-01 02:55:13 +00:00
url Enable testifylint rules (#34075) 2025-03-31 01:53:48 -04:00
attribute.go
batch_reader.go Remove context from git struct (#33793) 2025-03-04 11:56:11 -08:00
batch.go Decouple Batch from git.Repository to simplify usage without requiring the creation of a Repository struct. (#34001) 2025-03-27 17:35:48 +00:00
blame_sha256_test.go Uniform all temporary directories and allow customizing temp path (#32352) 2025-04-08 16:15:28 +00:00
blame_test.go Uniform all temporary directories and allow customizing temp path (#32352) 2025-04-08 16:15:28 +00:00
blame.go Uniform all temporary directories and allow customizing temp path (#32352) 2025-04-08 16:15:28 +00:00
blob_gogit.go
blob_nogogit.go Refactor the usage of batch catfile (#31754) 2024-08-20 17:04:57 +00:00
blob_test.go Use test context in tests and new loop system in benchmarks (#33648) 2025-02-20 09:57:40 +00:00
blob.go Full-file syntax highlighting for diff pages (#33766) 2025-03-09 12:51:58 +08:00
command_race_test.go Remove context from git struct (#33793) 2025-03-04 11:56:11 -08:00
command_test.go Enable testifylint rules (#34075) 2025-03-31 01:53:48 -04:00
command.go Fix the issue with error message logging for the check-attr command on Windows OS. (#34035) 2025-03-27 17:25:31 +08:00
commit_convert_gogit.go
commit_info_gogit.go add submodule diff links (#33097) 2025-01-08 01:38:30 +00:00
commit_info_nogogit.go Fix material icon & diff highlight (#33844) 2025-03-10 22:34:48 +08:00
commit_info_test.go Use test context in tests and new loop system in benchmarks (#33648) 2025-02-20 09:57:40 +00:00
commit_info.go add submodule diff links (#33097) 2025-01-08 01:38:30 +00:00
commit_reader.go
commit_sha256_test.go Enable testifylint rules (#34075) 2025-03-31 01:53:48 -04:00
commit_submodule_file_test.go Use test context in tests and new loop system in benchmarks (#33648) 2025-02-20 09:57:40 +00:00
commit_submodule_file.go Link to tree views of submodules if possible (#33424) 2025-01-30 00:09:52 +00:00
commit_submodule.go add submodule diff links (#33097) 2025-01-08 01:38:30 +00:00
commit_test.go Enable testifylint rules (#34075) 2025-03-31 01:53:48 -04:00
commit.go Remove context from git struct (#33793) 2025-03-04 11:56:11 -08:00
config_submodule_test.go Fix submodule parsing (#32571) 2024-11-20 19:26:12 +00:00
config_submodule.go Fix submodule parsing (#32571) 2024-11-20 19:26:12 +00:00
config_test.go Fix submodule parsing (#32571) 2024-11-20 19:26:12 +00:00
config.go Remove context from git struct (#33793) 2025-03-04 11:56:11 -08:00
diff_test.go Enable testifylint rules (#34075) 2025-03-31 01:53:48 -04:00
diff.go Remove context from git struct (#33793) 2025-03-04 11:56:11 -08:00
error.go Keep file tree view icons consistent with icon theme (#33921) 2025-04-06 19:35:08 +00:00
fsck.go Remove context from git struct (#33793) 2025-03-04 11:56:11 -08:00
git_test.go Uniform all temporary directories and allow customizing temp path (#32352) 2025-04-08 16:15:28 +00:00
git.go Remove context from git struct (#33793) 2025-03-04 11:56:11 -08:00
grep_test.go Use test context in tests and new loop system in benchmarks (#33648) 2025-02-20 09:57:40 +00:00
grep.go Enable addtional linters (#34085) 2025-04-01 10:14:01 +00:00
hook.go Move duplicated functions (#33977) 2025-03-25 14:40:31 +00:00
last_commit_cache_gogit.go
last_commit_cache_nogogit.go
last_commit_cache.go
log_name_status.go enable staticcheck QFxxxx rules (#34064) 2025-03-29 17:32:28 -04:00
notes_gogit.go
notes_nogogit.go
notes_test.go Use test context in tests and new loop system in benchmarks (#33648) 2025-02-20 09:57:40 +00:00
notes.go
object_format.go Make sure git version&feature are always prepared (#30877) 2024-05-06 18:34:16 +02:00
object_id_gogit.go
object_id_test.go
object_id.go Enable addtional linters (#34085) 2025-04-01 10:14:01 +00:00
parse_gogit_test.go Resolve lint for unused parameter and unnecessary type arguments (#30750) 2024-04-29 08:47:56 +00:00
parse_gogit.go Resolve lint for unused parameter and unnecessary type arguments (#30750) 2024-04-29 08:47:56 +00:00
parse_nogogit_test.go Enable testifylint rules (#34075) 2025-03-31 01:53:48 -04:00
parse_nogogit.go Add file tree to file view page (#32721) 2025-03-15 16:26:49 +08:00
parse.go Add go wrapper around git diff-tree --raw -r -M (#33369) 2025-02-07 00:58:28 +00:00
README.md
ref_test.go Refactor RefName (#33234) 2025-01-13 14:01:53 +08:00
ref.go Refactor RefName (#33234) 2025-01-13 14:01:53 +08:00
remote.go Remove context from git struct (#33793) 2025-03-04 11:56:11 -08:00
repo_archive_test.go Refactor context RefName and RepoAssignment (#33226) 2025-01-13 01:07:05 +00:00
repo_archive.go Remove context from git struct (#33793) 2025-03-04 11:56:11 -08:00
repo_attribute_test.go Fix some UI bugs and clean up unused tests (#34088) 2025-04-01 07:02:30 +00:00
repo_attribute.go Enable addtional linters (#34085) 2025-04-01 10:14:01 +00:00
repo_base_gogit.go Move duplicated functions (#33977) 2025-03-25 14:40:31 +00:00
repo_base_nogogit.go Decouple Batch from git.Repository to simplify usage without requiring the creation of a Repository struct. (#34001) 2025-03-27 17:35:48 +00:00
repo_blame.go Remove context from git struct (#33793) 2025-03-04 11:56:11 -08:00
repo_blob_gogit.go
repo_blob_nogogit.go
repo_blob_test.go
repo_blob.go
repo_branch_gogit.go Fix typo in documentation of GetBranchNames() (#33330) 2025-01-19 18:41:15 -05:00
repo_branch_nogogit.go Remove context from git struct (#33793) 2025-03-04 11:56:11 -08:00
repo_branch_test.go Enable testifylint rules (#34075) 2025-03-31 01:53:48 -04:00
repo_branch.go Refactor Branch struct in package modules/git (#33980) 2025-04-02 17:31:32 +00:00
repo_commit_gogit.go Remove context from git struct (#33793) 2025-03-04 11:56:11 -08:00
repo_commit_nogogit.go Avoid creating unnecessary temporary cat file sub process (#33942) 2025-04-04 16:19:19 -07:00
repo_commit_test.go Fix commit range paging (#32944) 2024-12-23 07:07:12 +00:00
repo_commit.go Remove context from git struct (#33793) 2025-03-04 11:56:11 -08:00
repo_commitgraph_gogit.go Use filepath.Join instead of path.Join for file system file operations (#33978) 2025-03-24 14:50:28 -07:00
repo_commitgraph.go Remove context from git struct (#33793) 2025-03-04 11:56:11 -08:00
repo_compare_test.go Refactor getpatch/getdiff functions and remove unnecessary fallback (#32817) 2024-12-24 14:29:34 +08:00
repo_compare.go Decouple diff stats query from actual diffing (#33810) 2025-03-08 17:36:08 +08:00
repo_gpg.go Remove context from git struct (#33793) 2025-03-04 11:56:11 -08:00
repo_hook.go
repo_index.go Uniform all temporary directories and allow customizing temp path (#32352) 2025-04-08 16:15:28 +00:00
repo_language_stats_gogit.go
repo_language_stats_nogogit.go Refactor the usage of batch catfile (#31754) 2024-08-20 17:04:57 +00:00
repo_language_stats_test.go Uniform all temporary directories and allow customizing temp path (#32352) 2025-04-08 16:15:28 +00:00
repo_language_stats.go
repo_object.go Remove context from git struct (#33793) 2025-03-04 11:56:11 -08:00
repo_ref_gogit.go
repo_ref_nogogit.go Remove context from git struct (#33793) 2025-03-04 11:56:11 -08:00
repo_ref_test.go
repo_ref.go enable staticcheck QFxxxx rules (#34064) 2025-03-29 17:32:28 -04:00
repo_stats_test.go Enable testifylint rules (#34075) 2025-03-31 01:53:48 -04:00
repo_stats.go Remove context from git struct (#33793) 2025-03-04 11:56:11 -08:00
repo_tag_gogit.go Fix submodule parsing (#32571) 2024-11-20 19:26:12 +00:00
repo_tag_nogogit.go Avoid creating unnecessary temporary cat file sub process (#33942) 2025-04-04 16:19:19 -07:00
repo_tag_test.go Enable testifylint rules (#34075) 2025-03-31 01:53:48 -04:00
repo_tag.go Move git references checking to gitrepo packages to reduce expose of repository path (#33891) 2025-03-15 19:48:59 -07:00
repo_test.go Use test context in tests and new loop system in benchmarks (#33648) 2025-02-20 09:57:40 +00:00
repo_tree_gogit.go Remove context from git struct (#33793) 2025-03-04 11:56:11 -08:00
repo_tree_nogogit.go Avoid creating unnecessary temporary cat file sub process (#33942) 2025-04-04 16:19:19 -07:00
repo_tree.go Remove context from git struct (#33793) 2025-03-04 11:56:11 -08:00
repo.go Uniform all temporary directories and allow customizing temp path (#32352) 2025-04-08 16:15:28 +00:00
signature_gogit.go
signature_nogogit.go
signature_test.go Enable testifylint rules (#34075) 2025-03-31 01:53:48 -04:00
signature.go
submodule_test.go Enable testifylint rules (#34075) 2025-03-31 01:53:48 -04:00
submodule.go Remove context from git struct (#33793) 2025-03-04 11:56:11 -08:00
tag_test.go
tag.go Avoid creating unnecessary temporary cat file sub process (#33942) 2025-04-04 16:19:19 -07:00
tree_blob_gogit.go Add file tree to file view page (#32721) 2025-03-15 16:26:49 +08:00
tree_blob_nogogit.go Inherit submodules from template repository content (#16237) 2025-01-01 02:55:13 +00:00
tree_blob.go
tree_entry_gogit.go
tree_entry_mode.go Keep file tree view icons consistent with icon theme (#33921) 2025-04-06 19:35:08 +00:00
tree_entry_nogogit.go Inherit submodules from template repository content (#16237) 2025-01-01 02:55:13 +00:00
tree_entry_test.go
tree_entry.go Keep file tree view icons consistent with icon theme (#33921) 2025-04-06 19:35:08 +00:00
tree_gogit.go
tree_nogogit.go Remove context from git struct (#33793) 2025-03-04 11:56:11 -08:00
tree_test.go Enable testifylint rules (#34075) 2025-03-31 01:53:48 -04:00
tree.go Remove context from git struct (#33793) 2025-03-04 11:56:11 -08:00
utils_test.go Refactor sha1 and time-limited code (#31023) 2024-05-20 15:12:50 +00:00
utils.go Move duplicated functions (#33977) 2025-03-25 14:40:31 +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.