Introduce concrete and partial commits. Concrete commits have all the information from remote including the hash and commit content. Partial commits are based on locally available copy of a repo, they may only contain the commit hash and reference. IsConcreteCommit() can be used to find out if a given commit is based on local information or full remote repo information. Update go-git and libgit2 branch/tag clone optimization to return a partial commit and no error. Update and simplify the go-git and libgit2 tests for the same. Signed-off-by: Sunny <darkowlzz@protonmail.com> |
||
---|---|---|
.. | ||
checkout.go | ||
checkout_test.go | ||
gogit.go | ||
transport.go | ||
transport_test.go |