gitea/modules/git
Lunny Xiao df7f1c2ead
Fix protected branch files detection on pre_receive hook (#31778)
Fix #31738

When pushing a new branch, the old commit is zero. Most git commands
cannot recognize the zero commit id. To get the changed files in the
push, we need to get the first diverge commit of this branch. In most
situations, we could check commits one by one until one commit is
contained by another branch. Then we will think that commit is the
diverge point.

And in a pre-receive hook, this will be more difficult because all
commits haven't been merged and they actually stored in a temporary
place by git. So we need to bring some envs to let git know the commit
exist.
2024-08-06 13:32:49 +07:00
..
foreachref Use refname:strip-2 instead of refname:short when syncing tags (#28797) 2024-01-16 08:13:07 +07:00
internal
pipeline Deduplicate lfs common code (#30704) 2024-04-26 02:53:30 +07:00
tests/repos Add support for sha256 repositories (#23894) 2024-01-19 17:05:02 +07:00
url
README.md
attribute.go Refactor git attributes (#29356) 2024-02-24 18:46:49 +07:00
batch_reader.go Enable more `revive` linter rules (#30608) 2024-04-22 11:48:42 +07:00
blame.go Make sure git version&feature are always prepared (#30877) 2024-05-06 18:34:16 +07:00
blame_sha256_test.go Lazy load object format with command line and don't do it in OpenRepository (#29712) 2024-03-12 04:21:27 +07:00
blame_test.go Lazy load object format with command line and don't do it in OpenRepository (#29712) 2024-03-12 04:21:27 +07:00
blob.go
blob_gogit.go Abstract hash function usage (#28138) 2023-12-13 21:02:00 +07:00
blob_nogogit.go Do not double close reader (#29354) 2024-02-24 11:45:59 +07:00
blob_test.go
command.go Support repo code search without setting up an indexer (#29998) 2024-03-24 17:05:00 +07:00
command_race_test.go
command_test.go
commit.go Make sure git version&feature are always prepared (#30877) 2024-05-06 18:34:16 +07:00
commit_convert_gogit.go Refactor commit signature parser (#30228) 2024-04-01 20:23:17 +07:00
commit_info.go
commit_info_gogit.go Abstract hash function usage (#28138) 2023-12-13 21:02:00 +07:00
commit_info_nogogit.go Resolve lint for unused parameter and unnecessary type arguments (#30750) 2024-04-29 08:47:56 +07:00
commit_info_test.go
commit_reader.go Enable more `revive` linter rules (#30608) 2024-04-22 11:48:42 +07:00
commit_sha256_test.go Lazy load object format with command line and don't do it in OpenRepository (#29712) 2024-03-12 04:21:27 +07:00
commit_test.go Fix protected branch files detection on pre_receive hook (#31778) 2024-08-06 13:32:49 +07:00
diff.go Fix protected branch files detection on pre_receive hook (#31778) 2024-08-06 13:32:49 +07:00
diff_test.go
error.go Add merge style `fast-forward-only` (#28954) 2024-02-12 23:37:23 +07:00
git.go Make sure git version&feature are always prepared (#30877) 2024-05-06 18:34:16 +07:00
git_test.go Refactor git version functions and check compatibility (#29155) 2024-02-14 17:18:30 +07:00
grep.go Improve grep search (#30843) 2024-05-03 09:13:48 +07:00
grep_test.go Improve grep search (#30843) 2024-05-03 09:13:48 +07:00
hook.go
last_commit_cache.go Refactor cache and disable go-chi cache (#30417) 2024-04-13 08:38:44 +07:00
last_commit_cache_gogit.go Abstract hash function usage (#28138) 2023-12-13 21:02:00 +07:00
last_commit_cache_nogogit.go
log_name_status.go bump to use go 1.22 (#29119) 2024-02-14 18:19:57 +07:00
notes.go
notes_gogit.go Abstract hash function usage (#28138) 2023-12-13 21:02:00 +07:00
notes_nogogit.go
notes_test.go
object_format.go Make sure git version&feature are always prepared (#30877) 2024-05-06 18:34:16 +07:00
object_id.go Make sure git version&feature are always prepared (#30877) 2024-05-06 18:34:16 +07:00
object_id_gogit.go Add support for sha256 repositories (#23894) 2024-01-19 17:05:02 +07:00
object_id_test.go Fix incorrect object id hash function (#30708) 2024-04-26 09:49:48 +07:00
parse_gogit.go Resolve lint for unused parameter and unnecessary type arguments (#30750) 2024-04-29 08:47:56 +07:00
parse_gogit_test.go Resolve lint for unused parameter and unnecessary type arguments (#30750) 2024-04-29 08:47:56 +07:00
parse_nogogit.go Resolve lint for unused parameter and unnecessary type arguments (#30750) 2024-04-29 08:47:56 +07:00
parse_nogogit_test.go Resolve lint for unused parameter and unnecessary type arguments (#30750) 2024-04-29 08:47:56 +07:00
ref.go Update misspell to 0.5.1 and add `misspellings.csv` (#30573) 2024-04-27 08:03:49 +07:00
ref_test.go
remote.go Make sure git version&feature are always prepared (#30877) 2024-05-06 18:34:16 +07:00
repo.go Make "sync branch" also sync object format and add tests (#30878) 2024-05-06 17:02:30 +07:00
repo_archive.go Fix archive creating LFS hooks and breaking pull requests (#28848) 2024-01-19 05:49:18 +07:00
repo_attribute.go Refactor git attributes (#29356) 2024-02-24 18:46:49 +07:00
repo_attribute_test.go Refactor git attributes (#29356) 2024-02-24 18:46:49 +07:00
repo_base_gogit.go Make sure git version&feature are always prepared (#30877) 2024-05-06 18:34:16 +07:00
repo_base_nogogit.go Make sure git version&feature are always prepared (#30877) 2024-05-06 18:34:16 +07:00
repo_blame.go
repo_blob.go Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +07:00
repo_blob_gogit.go Abstract hash function usage (#28138) 2023-12-13 21:02:00 +07:00
repo_blob_nogogit.go Abstract hash function usage (#28138) 2023-12-13 21:02:00 +07:00
repo_blob_test.go Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +07:00
repo_branch.go Move get/set default branch from git package to gitrepo package to hide repopath (#29126) 2024-03-08 15:30:10 +07:00
repo_branch_gogit.go Simplify how git repositories are opened (#28937) 2024-01-27 21:09:51 +07:00
repo_branch_nogogit.go Simplify how git repositories are opened (#28937) 2024-01-27 21:09:51 +07:00
repo_branch_test.go
repo_commit.go Fix protected branch files detection on pre_receive hook (#31778) 2024-08-06 13:32:49 +07:00
repo_commit_gogit.go Lazy load object format with command line and don't do it in OpenRepository (#29712) 2024-03-12 04:21:27 +07:00
repo_commit_nogogit.go Lazy load object format with command line and don't do it in OpenRepository (#29712) 2024-03-12 04:21:27 +07:00
repo_commit_test.go Fix protected branch files detection on pre_receive hook (#31778) 2024-08-06 13:32:49 +07:00
repo_commitgraph.go Make sure git version&feature are always prepared (#30877) 2024-05-06 18:34:16 +07:00
repo_commitgraph_gogit.go Update go dependencies and fix go-git (#28893) 2024-01-23 05:40:00 +07:00
repo_compare.go Lazy load object format with command line and don't do it in OpenRepository (#29712) 2024-03-12 04:21:27 +07:00
repo_compare_test.go Lazy load object format with command line and don't do it in OpenRepository (#29712) 2024-03-12 04:21:27 +07:00
repo_gpg.go Abstract hash function usage (#28138) 2023-12-13 21:02:00 +07:00
repo_hook.go
repo_index.go Fix slow patch checking with commits that add or remove many files (#31548) 2024-07-04 18:57:11 +07:00
repo_language_stats.go Refactor git attributes (#29356) 2024-02-24 18:46:49 +07:00
repo_language_stats_gogit.go Refactor git attributes (#29356) 2024-02-24 18:46:49 +07:00
repo_language_stats_nogogit.go Refactor git attributes (#29356) 2024-02-24 18:46:49 +07:00
repo_language_stats_test.go
repo_object.go Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +07:00
repo_ref.go
repo_ref_gogit.go Abstract hash function usage (#28138) 2023-12-13 21:02:00 +07:00
repo_ref_nogogit.go Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +07:00
repo_ref_test.go
repo_stats.go Fix some pending problems (#29985) 2024-03-22 19:17:30 +07:00
repo_stats_test.go
repo_tag.go Refactor commit signature parser (#30228) 2024-04-01 20:23:17 +07:00
repo_tag_gogit.go Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +07:00
repo_tag_nogogit.go Discard unread data of `git cat-file` (#29297) 2024-02-22 03:48:19 +07:00
repo_tag_test.go Refactor commit signature parser (#30228) 2024-04-01 20:23:17 +07:00
repo_test.go
repo_tree.go Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +07:00
repo_tree_gogit.go Lazy load object format with command line and don't do it in OpenRepository (#29712) 2024-03-12 04:21:27 +07:00
repo_tree_nogogit.go Lazy load object format with command line and don't do it in OpenRepository (#29712) 2024-03-12 04:21:27 +07:00
signature.go Refactor parseSignatureFromCommitLine (#29054) 2024-02-09 11:02:53 +07:00
signature_gogit.go Refactor parseSignatureFromCommitLine (#29054) 2024-02-09 11:02:53 +07:00
signature_nogogit.go Refactor parseSignatureFromCommitLine (#29054) 2024-02-09 11:02:53 +07:00
signature_test.go Refactor parseSignatureFromCommitLine (#29054) 2024-02-09 11:02:53 +07:00
submodule.go Enable more `revive` linter rules (#30608) 2024-04-22 11:48:42 +07:00
submodule_test.go
tag.go Refactor commit signature parser (#30228) 2024-04-01 20:23:17 +07:00
tag_test.go Refactor commit signature parser (#30228) 2024-04-01 20:23:17 +07:00
tree.go Abstract hash function usage (#28138) 2023-12-13 21:02:00 +07:00
tree_blob.go
tree_blob_gogit.go Abstract hash function usage (#28138) 2023-12-13 21:02:00 +07:00
tree_blob_nogogit.go
tree_entry.go
tree_entry_gogit.go Abstract hash function usage (#28138) 2023-12-13 21:02:00 +07:00
tree_entry_mode.go
tree_entry_nogogit.go Abstract hash function usage (#28138) 2023-12-13 21:02:00 +07:00
tree_entry_test.go
tree_gogit.go Abstract hash function usage (#28138) 2023-12-13 21:02:00 +07:00
tree_nogogit.go Resolve lint for unused parameter and unnecessary type arguments (#30750) 2024-04-29 08:47:56 +07:00
tree_test.go Discard unread data of `git cat-file` (#29297) 2024-02-22 03:48:19 +07:00
utils.go Refactor sha1 and time-limited code (#31023) 2024-05-20 15:12:50 +07:00
utils_test.go Refactor sha1 and time-limited code (#31023) 2024-05-20 15:12:50 +07:00

README.md

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.