You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Filip Navara 2af67f6044 Improve listing performance by using go-git (#6478)
* Use go-git for tree reading and commit info lookup.

Signed-off-by: Filip Navara <navara@emclient.com>

* Use TreeEntry.IsRegular() instead of ObjectType that was removed.

Signed-off-by: Filip Navara <navara@emclient.com>

* Use the treePath to optimize commit info search.

Signed-off-by: Filip Navara <navara@emclient.com>

* Extract the latest commit at treePath along with the other commits.

Signed-off-by: Filip Navara <navara@emclient.com>

* Fix listing commit info for a directory that was created in one commit and never modified after.

Signed-off-by: Filip Navara <navara@emclient.com>

* Avoid nearly all external 'git' invocations when doing directory listing (.editorconfig code path is still hit).

Signed-off-by: Filip Navara <navara@emclient.com>

* Use go-git for reading blobs.

Signed-off-by: Filip Navara <navara@emclient.com>

* Make SHA1 type alias for plumbing.Hash in go-git.

Signed-off-by: Filip Navara <navara@emclient.com>

* Make Signature type alias for object.Signature in go-git.

Signed-off-by: Filip Navara <navara@emclient.com>

* Fix GetCommitsInfo for repository with only one commit.

Signed-off-by: Filip Navara <navara@emclient.com>

* Fix PGP signature verification.

Signed-off-by: Filip Navara <navara@emclient.com>

* Fix issues with walking commit graph across merges.

Signed-off-by: Filip Navara <navara@emclient.com>

* Fix typo in condition.

Signed-off-by: Filip Navara <navara@emclient.com>

* Speed up loading branch list by keeping the repository reference (and thus all the loaded packfile indexes).

Signed-off-by: Filip Navara <navara@emclient.com>

* Fix lising submodules.

Signed-off-by: Filip Navara <navara@emclient.com>

* Fix build

Signed-off-by: Filip Navara <navara@emclient.com>

* Add back commit cache because of name-rev

Signed-off-by: Filip Navara <navara@emclient.com>

* Fix tests

Signed-off-by: Filip Navara <navara@emclient.com>

* Fix code style

* Fix spelling

* Address PR feedback

Signed-off-by: Filip Navara <navara@emclient.com>

* Update vendor module list

Signed-off-by: Filip Navara <navara@emclient.com>

* Fix getting trees by commit id

Signed-off-by: Filip Navara <navara@emclient.com>

* Fix remaining unit test failures

* Fix GetTreeBySHA

* Avoid running `git name-rev` if not necessary

Signed-off-by: Filip Navara <navara@emclient.com>

* Move Branch code to git module

* Clean up GPG signature verification and fix it for tagged commits

* Address PR feedback (import formatting, copyright headers)

* Make blob lookup by SHA working

* Update tests to use public API

* Allow getting content from any type of object through the blob interface

* Change test to actually expect the object content that is in the GIT repository

* Change one more test to actually expect the object content that is in the GIT repository

* Add comments
5 years ago
..
tests/repos/repo1_bare move code.gitea.io/git to code.gitea.io/gitea/modules/git (#6364) 5 years ago
README.md move code.gitea.io/git to code.gitea.io/gitea/modules/git (#6364) 5 years ago
blob.go Improve listing performance by using go-git (#6478) 5 years ago
blob_test.go Improve listing performance by using go-git (#6478) 5 years ago
cache.go move code.gitea.io/git to code.gitea.io/gitea/modules/git (#6364) 5 years ago
command.go Pre-calculate the absolute path of git (#6575) 5 years ago
command_test.go move code.gitea.io/git to code.gitea.io/gitea/modules/git (#6364) 5 years ago
commit.go Improve listing performance by using go-git (#6478) 5 years ago
commit_archive.go move code.gitea.io/git to code.gitea.io/gitea/modules/git (#6364) 5 years ago
commit_info.go Improve listing performance by using go-git (#6478) 5 years ago
commit_info_test.go Improve listing performance by using go-git (#6478) 5 years ago
commit_test.go move code.gitea.io/git to code.gitea.io/gitea/modules/git (#6364) 5 years ago
error.go Improve listing performance by using go-git (#6478) 5 years ago
git.go Pre-calculate the absolute path of git (#6575) 5 years ago
hook.go move code.gitea.io/git to code.gitea.io/gitea/modules/git (#6364) 5 years ago
parse.go Improve listing performance by using go-git (#6478) 5 years ago
parse_test.go Improve listing performance by using go-git (#6478) 5 years ago
ref.go move code.gitea.io/git to code.gitea.io/gitea/modules/git (#6364) 5 years ago
repo.go Improve listing performance by using go-git (#6478) 5 years ago
repo_blame.go move code.gitea.io/git to code.gitea.io/gitea/modules/git (#6364) 5 years ago
repo_blob.go Improve listing performance by using go-git (#6478) 5 years ago
repo_blob_test.go Improve listing performance by using go-git (#6478) 5 years ago
repo_branch.go Improve listing performance by using go-git (#6478) 5 years ago
repo_branch_test.go move code.gitea.io/git to code.gitea.io/gitea/modules/git (#6364) 5 years ago
repo_commit.go Improve listing performance by using go-git (#6478) 5 years ago
repo_commit_test.go move code.gitea.io/git to code.gitea.io/gitea/modules/git (#6364) 5 years ago
repo_hook.go move code.gitea.io/git to code.gitea.io/gitea/modules/git (#6364) 5 years ago
repo_object.go move code.gitea.io/git to code.gitea.io/gitea/modules/git (#6364) 5 years ago
repo_pull.go Prevent server 500 on compare branches with no common history (#6555) 5 years ago
repo_pull_test.go move code.gitea.io/git to code.gitea.io/gitea/modules/git (#6364) 5 years ago
repo_ref.go move code.gitea.io/git to code.gitea.io/gitea/modules/git (#6364) 5 years ago
repo_ref_test.go move code.gitea.io/git to code.gitea.io/gitea/modules/git (#6364) 5 years ago
repo_tag.go Improve listing performance by using go-git (#6478) 5 years ago
repo_tag_test.go move code.gitea.io/git to code.gitea.io/gitea/modules/git (#6364) 5 years ago
repo_test.go move code.gitea.io/git to code.gitea.io/gitea/modules/git (#6364) 5 years ago
repo_tree.go Improve listing performance by using go-git (#6478) 5 years ago
sha1.go Improve listing performance by using go-git (#6478) 5 years ago
signature.go Improve listing performance by using go-git (#6478) 5 years ago
submodule.go move code.gitea.io/git to code.gitea.io/gitea/modules/git (#6364) 5 years ago
submodule_test.go move code.gitea.io/git to code.gitea.io/gitea/modules/git (#6364) 5 years ago
tag.go move code.gitea.io/git to code.gitea.io/gitea/modules/git (#6364) 5 years ago
tree.go Improve listing performance by using go-git (#6478) 5 years ago
tree_blob.go Improve listing performance by using go-git (#6478) 5 years ago
tree_entry.go Improve listing performance by using go-git (#6478) 5 years ago
tree_entry_test.go Improve listing performance by using go-git (#6478) 5 years ago
utils.go move code.gitea.io/git to code.gitea.io/gitea/modules/git (#6364) 5 years ago

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.