dvc: dedup brancher (#2639)

This commit is contained in:
Alexander Schepanovski
2019-10-20 17:32:42 +03:00
committed by Ruslan Kuprieiev
parent 1e01ce3ac9
commit 1f58fc6f42
2 changed files with 7 additions and 3 deletions
+4 -3
View File
@@ -1,3 +1,4 @@
from funcy import group_by
from dvc.scm.tree import WorkingTree
@@ -47,8 +48,8 @@ def brancher( # noqa: E302
# `brancher()`, but this could cause problems on exception handling
# code which might expect the tree on which exception was raised to
# stay in place. This behavior is a subject to change.
for rev in revs:
self.tree = scm.get_tree(rev)
yield rev
for sha, names in group_by(scm.resolve_rev, revs).items():
self.tree = scm.get_tree(sha)
yield ", ".join(names)
self.tree = saved_tree
+3
View File
@@ -360,6 +360,9 @@ class Git(Base):
def get_rev(self):
return self.repo.git.rev_parse("HEAD")
def resolve_rev(self, rev):
return self.repo.git.rev_parse(rev)
def close(self):
self.repo.close()