diff options
author | Máximo Cuadros <mcuadros@gmail.com> | 2017-04-11 21:28:19 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-04-11 21:28:19 +0200 |
commit | 9b45f468c61a0756dd19d09b64c2b1a88cc99ec5 (patch) | |
tree | 0e513815f1ef3765538c19b893ab4990264ae46d /plumbing/revlist | |
parent | 3daede53835e8572b2957a016f068781db646567 (diff) | |
parent | efef1479b7948e4f9f310446cfdf360f2cb09596 (diff) | |
download | go-git-9b45f468c61a0756dd19d09b64c2b1a88cc99ec5.tar.gz |
Merge pull request #337 from ajnavarro/repository-log
Add Repository.Log() method (fix #298)
Diffstat (limited to 'plumbing/revlist')
-rw-r--r-- | plumbing/revlist/revlist.go | 23 |
1 files changed, 12 insertions, 11 deletions
diff --git a/plumbing/revlist/revlist.go b/plumbing/revlist/revlist.go index eb9afaf..fbd1bd9 100644 --- a/plumbing/revlist/revlist.go +++ b/plumbing/revlist/revlist.go @@ -82,20 +82,21 @@ func reachableObjects( commit *object.Commit, seen map[plumbing.Hash]bool, cb func(h plumbing.Hash)) error { - return object.WalkCommitHistory(commit, func(commit *object.Commit) error { - if seen[commit.Hash] { - return nil - } + return object.NewCommitPreIterator(commit). + ForEach(func(commit *object.Commit) error { + if seen[commit.Hash] { + return nil + } - cb(commit.Hash) + cb(commit.Hash) - tree, err := commit.Tree() - if err != nil { - return err - } + tree, err := commit.Tree() + if err != nil { + return err + } - return iterateCommitTrees(seen, tree, cb) - }) + return iterateCommitTrees(seen, tree, cb) + }) } // iterateCommitTrees iterate all reachable trees from the given commit |