def herd(self, branch=None, depth=None): """Clone project or update latest from upstream""" self._print_status() if branch is None: ref = self.ref else: ref = 'refs/heads/' + branch if depth is None: herd_depth = self.depth else: herd_depth = depth if not os.path.isdir(os.path.join(self.full_path(), '.git')): git_create_repo(self.url, self.full_path(), self.remote_name, ref, herd_depth) else: git_herd(self.full_path(), self.url, self.remote_name, ref, herd_depth) for fork in self.forks: fork.herd(ref, herd_depth)
def init(self, url, branch): """Clone clowder repo from url""" repo_branch = 'refs/heads/' + branch git_create_repo(url, self.clowder_path, 'origin', repo_branch) self.link()