MCPcopy
hub / github.com/go-git/go-git / resolveToCommitHash

Method resolveToCommitHash

repository.go:872–889  ·  view source on GitHub ↗
(h plumbing.Hash)

Source from the content-addressed store, hash-verified

870}
871
872func (r *Repository) resolveToCommitHash(h plumbing.Hash) (plumbing.Hash, error) {
873 obj, err := r.Storer.EncodedObject(plumbing.AnyObject, h)
874 if err != nil {
875 return plumbing.ZeroHash, err
876 }
877 switch obj.Type() {
878 case plumbing.TagObject:
879 t, err := object.DecodeTag(r.Storer, obj)
880 if err != nil {
881 return plumbing.ZeroHash, err
882 }
883 return r.resolveToCommitHash(t.Target)
884 case plumbing.CommitObject:
885 return h, nil
886 default:
887 return plumbing.ZeroHash, ErrUnableToResolveCommit
888 }
889}
890
891// Clone clones a remote repository
892func (r *Repository) clone(ctx context.Context, o *CloneOptions) error {

Callers 1

updateReferencesMethod · 0.95

Calls 3

DecodeTagFunction · 0.92
EncodedObjectMethod · 0.65
TypeMethod · 0.65

Tested by

no test coverage detected