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

Method fetchPack

remote.go:572–597  ·  view source on GitHub ↗
(ctx context.Context, o *FetchOptions, s transport.UploadPackSession,
	req *packp.UploadPackRequest)

Source from the content-addressed store, hash-verified

570}
571
572func (r *Remote) fetchPack(ctx context.Context, o *FetchOptions, s transport.UploadPackSession,
573 req *packp.UploadPackRequest) (err error) {
574
575 reader, err := s.UploadPack(ctx, req)
576 if err != nil {
577 if errors.Is(err, transport.ErrEmptyUploadPackRequest) {
578 // XXX: no packfile provided, everything is up-to-date.
579 return nil
580 }
581 return err
582 }
583
584 defer ioutil.CheckClose(reader, &err)
585
586 if err = r.updateShallow(o, reader); err != nil {
587 return err
588 }
589
590 if err = packfile.UpdateObjectStorage(r.s,
591 buildSidebandIfSupported(req.Capabilities, reader, o.Progress),
592 ); err != nil {
593 return err
594 }
595
596 return err
597}
598
599func (r *Remote) pruneRemotes(specs []config.RefSpec, localRefs []*plumbing.Reference, remoteRefs memory.ReferenceStorage) (bool, error) {
600 var updatedPrune bool

Callers 1

fetchMethod · 0.95

Calls 6

updateShallowMethod · 0.95
CheckCloseFunction · 0.92
UpdateObjectStorageFunction · 0.92
buildSidebandIfSupportedFunction · 0.85
IsMethod · 0.80
UploadPackMethod · 0.65

Tested by

no test coverage detected