def merge(self, ancestor, other): from dvc.objects.tree import merge assert other if ancestor: self._check_can_merge(ancestor) ancestor_info = ancestor.hash_info else: ancestor_info = None self._check_can_merge(self) self._check_can_merge(other) self.hash_info = merge(self.odb, ancestor_info, self.hash_info, other.hash_info)
def merge(self, ancestor, other): from dvc.objects.tree import du, merge assert other if ancestor: self._check_can_merge(ancestor) ancestor_info = ancestor.hash_info else: ancestor_info = None self._check_can_merge(self) self._check_can_merge(other) merged = merge(self.odb, ancestor_info, self.hash_info, other.hash_info) self.odb.add(merged.path_info, merged.fs, merged.hash_info) self.hash_info = merged.hash_info self.meta = Meta( size=du(self.odb, merged), nfiles=len(merged), )