all repos — homestead @ 667cddc4df71aa7496527bb659b2d41fafceb91e

Code for my website

enable updating to a specific commit

Alan Pearce
commit

667cddc4df71aa7496527bb659b2d41fafceb91e

parent

e4bdf0dd0740c21e89dd42413b7bc76da381fd37

2 files changed, 12 insertions(+), 8 deletions(-)

jump to
M internal/vcs/repository.gointernal/vcs/repository.go
@@ -46,8 +46,8 @@
return } -func (r *Repository) Update() (updated bool, err error) { - r.log.Info("updating repository", "from", r.headSHA()) +func (r *Repository) Update(rev string) (updated bool, err error) { + r.log.Info("updating repository", "from", r.HeadSHA()) err = r.repo.Fetch(&git.FetchOptions{ Prune: true, })
@@ -73,12 +73,16 @@ return false, err
} var hash plumbing.Hash - for _, ref := range refs { - if ref.Name() == plumbing.Main { - hash = ref.Hash() + if rev != "" { + for _, ref := range refs { + if ref.Name() == plumbing.Main { + hash = ref.Hash() - break + break + } } + } else { + hash = plumbing.NewHash(rev) } wt, err := r.repo.Worktree()
@@ -116,7 +120,7 @@
return nil } -func (r *Repository) headSHA() string { +func (r *Repository) HeadSHA() string { head, err := r.repo.Head() if err != nil { return ""
M internal/website/website.gointernal/website/website.go
@@ -56,7 +56,7 @@ }
builderOptions.Repo = repo if exists && !opts.Development { - _, err := repo.Update() + _, err := repo.Update("") if err != nil { return nil, errors.WithMessage(err, "could not update repository") }