From 4cc043a6d436728fbe5e04f35ae6530203a85c09 Mon Sep 17 00:00:00 2001 From: Taylor Blau Date: Thu, 7 Sep 2017 13:47:42 -0400 Subject: [PATCH] git/githistory: only update local refs --- git/githistory/rewriter.go | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/git/githistory/rewriter.go b/git/githistory/rewriter.go index a3707867..5083db94 100644 --- a/git/githistory/rewriter.go +++ b/git/githistory/rewriter.go @@ -410,10 +410,29 @@ func (r *Rewriter) commitsToMigrate(opt *RewriteOptions) ([][]byte, error) { // refsToMigrate returns a list of references to migrate, or an error if loading // those references failed. func (r *Rewriter) refsToMigrate() ([]*git.Ref, error) { + var refs []*git.Ref + var err error + if root, ok := r.db.Root(); ok { - return git.AllRefsIn(root) + refs, err = git.AllRefsIn(root) + } else { + refs, err = git.AllRefs() } - return git.AllRefs() + + if err != nil { + return nil, err + } + + var local []*git.Ref + for _, ref := range refs { + if ref.Type == git.RefTypeRemoteBranch || ref.Type == git.RefTypeRemoteTag { + continue + } + + local = append(local, ref) + } + + return local, nil } // scannerOpts returns a *git.ScanRefsOptions instance to be given to the