MCPcopy Index your code
hub / github.com/go-git/go-git / setHEADCommit

Method setHEADCommit

worktree.go:539–561  ·  view source on GitHub ↗
(commit plumbing.Hash)

Source from the content-addressed store, hash-verified

537}
538
539func (w *Worktree) setHEADCommit(commit plumbing.Hash) error {
540 head, err := w.r.Reference(plumbing.HEAD, false)
541 if err != nil {
542 return err
543 }
544
545 if head.Type() == plumbing.HashReference {
546 head = plumbing.NewHashReference(plumbing.HEAD, commit)
547 return w.r.Storer.SetReference(head)
548 }
549
550 branch, err := w.r.Reference(head.Target(), false)
551 if err != nil {
552 return err
553 }
554
555 if !branch.Name().IsBranch() {
556 return fmt.Errorf("invalid HEAD target should be a branch, found %s", branch.Type())
557 }
558
559 branch = plumbing.NewHashReference(branch.Name(), commit)
560 return w.r.Storer.SetReference(branch)
561}
562
563func (w *Worktree) checkoutChangeSubmodule(name string,
564 a merkletrie.Action,

Callers 1

ResetSparselyMethod · 0.95

Calls 7

NewHashReferenceFunction · 0.92
TargetMethod · 0.80
IsBranchMethod · 0.80
ReferenceMethod · 0.65
TypeMethod · 0.65
SetReferenceMethod · 0.65
NameMethod · 0.65

Tested by

no test coverage detected