def merge(self, remoteref, wd=None, **kwargs): if wd is None: git = self.git else: git = Git(wd) git.extra = dict(self.git.extra) git.extra["env"]["GIT_WORK_TREE"] = wd git.merge(remoteref)
def merge_index(self, *args, **kwargs): wd = kwargs.get("work_tree") if wd is None: git = self.git else: git = Git(wd) git.extra = dict(self.git.extra) git.extra["env"]["GIT_WORK_TREE"] = wd return git.merge_index(*args, **kwargs)
def checkout(self, wd=None, **kwargs): if wd is None: git = self.git wd = self.repo.wd else: git = Git(wd) git.extra = dict(self.git.extra) git.extra["env"]["GIT_WORK_TREE"] = wd try: makedirs(wd) except OSError, exc: if exc.errno != EEXIST: raise