forgejo/modules/git
Lunny Xiao 4eb2a29910
Improve ObjectFormat interface (#28496)
The 4 functions are duplicated, especially as interface methods. I think
we just need to keep `MustID` the only one and remove other 3.

```
MustID(b []byte) ObjectID
MustIDFromString(s string) ObjectID
NewID(b []byte) (ObjectID, error)
NewIDFromString(s string) (ObjectID, error)
```

Introduced the new interfrace method `ComputeHash` which will replace
the interface `HasherInterface`. Now we don't need to keep two
interfaces.

Reintroduced `git.NewIDFromString` and `git.MustIDFromString`. The new
function will detect the hash length to decide which objectformat of it.
If it's 40, then it's SHA1. If it's 64, then it's SHA256. This will be
right if the commitID is a full one. So the parameter should be always a
full commit id.

@AdamMajer Please review.
2023-12-19 07:20:47 +00:00
..
foreachref Replace interface{} with any (#25686) 2023-07-04 18:36:08 +00:00
internal
pipeline Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +00:00
tests/repos Support .git-blame-ignore-revs file (#26395) 2023-09-16 17:42:34 +00:00
url
batch_reader.go Abstract hash function usage (#28138) 2023-12-13 21:02:00 +00:00
blame.go Abstract hash function usage (#28138) 2023-12-13 21:02:00 +00:00
blame_test.go Adjust object format interface (#28469) 2023-12-17 11:56:08 +00:00
blob.go Fix profile render when the README.md size is larger than 1024 bytes (#25131) 2023-06-13 09:02:25 +00:00
blob_gogit.go Abstract hash function usage (#28138) 2023-12-13 21:02:00 +00:00
blob_nogogit.go Abstract hash function usage (#28138) 2023-12-13 21:02:00 +00:00
blob_test.go
command.go Add option to disable ambiguous unicode characters detection (#28454) 2023-12-17 14:38:54 +00:00
command_race_test.go
command_test.go
commit.go Adjust object format interface (#28469) 2023-12-17 11:56:08 +00:00
commit_convert_gogit.go Abstract hash function usage (#28138) 2023-12-13 21:02:00 +00:00
commit_info.go
commit_info_gogit.go Abstract hash function usage (#28138) 2023-12-13 21:02:00 +00:00
commit_info_nogogit.go Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +00:00
commit_info_test.go
commit_reader.go Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +00:00
commit_test.go Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +00:00
diff.go
diff_test.go
error.go
git.go Only use SHA256 feature when git >= 2.42 (#28466) 2023-12-14 16:51:05 +08:00
git_test.go Support changing git config through app.ini, use diff.algorithm=histogram by default (#24860) 2023-05-23 16:30:19 +00:00
hook.go
last_commit_cache.go Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +00:00
last_commit_cache_gogit.go Abstract hash function usage (#28138) 2023-12-13 21:02:00 +00:00
last_commit_cache_nogogit.go
log_name_status.go Abstract hash function usage (#28138) 2023-12-13 21:02:00 +00:00
notes.go
notes_gogit.go Abstract hash function usage (#28138) 2023-12-13 21:02:00 +00:00
notes_nogogit.go
notes_test.go
object_format.go Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +00:00
object_id.go Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +00:00
object_id_gogit.go Adjust object format interface (#28469) 2023-12-17 11:56:08 +00:00
object_id_test.go Adjust object format interface (#28469) 2023-12-17 11:56:08 +00:00
parse_gogit.go Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +00:00
parse_gogit_test.go Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +00:00
parse_nogogit.go Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +00:00
parse_nogogit_test.go Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +00:00
README.md
ref.go Adjust object format interface (#28469) 2023-12-17 11:56:08 +00:00
ref_test.go Use the type RefName for all the needed places and fix pull mirror sync bugs (#24634) 2023-05-26 01:04:48 +00:00
remote.go
repo.go Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +00:00
repo_archive.go
repo_attribute.go
repo_attribute_test.go Replace assert.Fail with assert.FailNow (#27578) 2023-10-11 11:02:24 +00:00
repo_base.go
repo_base_gogit.go Abstract hash function usage (#28138) 2023-12-13 21:02:00 +00:00
repo_base_nogogit.go Abstract hash function usage (#28138) 2023-12-13 21:02:00 +00:00
repo_blame.go Remove git.FileBlame (#25841) 2023-07-12 19:07:29 +02:00
repo_blob.go Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +00:00
repo_blob_gogit.go Abstract hash function usage (#28138) 2023-12-13 21:02:00 +00:00
repo_blob_nogogit.go Abstract hash function usage (#28138) 2023-12-13 21:02:00 +00:00
repo_blob_test.go Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +00:00
repo_branch.go Use the type RefName for all the needed places and fix pull mirror sync bugs (#24634) 2023-05-26 01:04:48 +00:00
repo_branch_gogit.go Make gogit Repository.GetBranchNames consistent (#28348) 2023-12-07 12:08:17 -05:00
repo_branch_nogogit.go
repo_branch_test.go
repo_commit.go Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +00:00
repo_commit_gogit.go Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +00:00
repo_commit_nogogit.go Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +00:00
repo_commit_test.go
repo_commitgraph.go
repo_commitgraph_gogit.go Update go dependencies (#28518) 2023-12-19 09:18:42 +08:00
repo_compare.go Adjust object format interface (#28469) 2023-12-17 11:56:08 +00:00
repo_compare_test.go Adjust object format interface (#28469) 2023-12-17 11:56:08 +00:00
repo_gpg.go Abstract hash function usage (#28138) 2023-12-13 21:02:00 +00:00
repo_hook.go
repo_index.go Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +00:00
repo_language_stats.go Merge different languages for language stats (#24900) 2023-05-24 19:37:36 +00:00
repo_language_stats_gogit.go Merge different languages for language stats (#24900) 2023-05-24 19:37:36 +00:00
repo_language_stats_nogogit.go Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +00:00
repo_language_stats_test.go Merge different languages for language stats (#24900) 2023-05-24 19:37:36 +00:00
repo_object.go Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +00:00
repo_ref.go Show branches and tags that contain a commit (#25180) 2023-07-27 12:47:41 +02:00
repo_ref_gogit.go Abstract hash function usage (#28138) 2023-12-13 21:02:00 +00:00
repo_ref_nogogit.go Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +00:00
repo_ref_test.go
repo_stats.go
repo_stats_test.go
repo_tag.go Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +00:00
repo_tag_gogit.go Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +00:00
repo_tag_nogogit.go Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +00:00
repo_tag_test.go Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +00:00
repo_test.go
repo_tree.go Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +00:00
repo_tree_gogit.go Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +00:00
repo_tree_nogogit.go Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +00:00
signature.go
signature_gogit.go
signature_nogogit.go Update tool dependencies, lock govulncheck and actionlint (#25655) 2023-07-09 11:58:06 +00:00
submodule.go Upgrade to golangci-lint@v1.55.0 (#27756) 2023-10-24 02:54:59 +00:00
submodule_test.go
tag.go Improve ObjectFormat interface (#28496) 2023-12-19 07:20:47 +00:00
tag_test.go Adjust object format interface (#28469) 2023-12-17 11:56:08 +00:00
tree.go Abstract hash function usage (#28138) 2023-12-13 21:02:00 +00:00
tree_blob.go
tree_blob_gogit.go Abstract hash function usage (#28138) 2023-12-13 21:02:00 +00:00
tree_blob_nogogit.go
tree_entry.go
tree_entry_gogit.go Abstract hash function usage (#28138) 2023-12-13 21:02:00 +00:00
tree_entry_mode.go
tree_entry_nogogit.go Abstract hash function usage (#28138) 2023-12-13 21:02:00 +00:00
tree_entry_test.go
tree_gogit.go Abstract hash function usage (#28138) 2023-12-13 21:02:00 +00:00
tree_nogogit.go Abstract hash function usage (#28138) 2023-12-13 21:02:00 +00:00
utils.go Replace interface{} with any (#25686) 2023-07-04 18:36:08 +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.