コード例 #1
0
    def update(self):
        if not os.path.exists(self.repo_path):
            os.makedirs(self.repo_path)
        if not vcs.is_git_root(self.repo_path):
            git("clone", self.remote_url, ".", repo=self.repo_path)
            git("checkout",
                "-b",
                self.local_branch,
                self.target_rev,
                repo=self.repo_path)
            assert vcs.is_git_root(self.repo_path)
        else:
            if git("status", "--porcelain", repo=self.repo_path):
                raise RepositoryError("Repository in %s not clean" %
                                      self.repo_path)

            git("fetch",
                self.remote_url,
                "%s:%s" % (self.target_rev, self.local_branch),
                repo=self.repo_path)
            git("checkout", self.local_branch, repo=self.repo_path)
        git("submodule", "init", repo=self.repo_path)
        git("submodule",
            "update",
            "--init",
            "--recursive",
            repo=self.repo_path)
コード例 #2
0
    def update(self):
        if not os.path.exists(self.repo_path):
            os.makedirs(self.repo_path)
        if not vcs.is_git_root(self.repo_path):
            git("clone", self.remote_url, ".", repo=self.repo_path)
            git("checkout", "-b", self.local_branch, self.target_rev, repo=self.repo_path)
            assert vcs.is_git_root(self.repo_path)
        else:
            if git("status", "--porcelain", repo=self.repo_path):
                raise RepositoryError("Repository in %s not clean" % self.repo_path)

            git("fetch", self.remote_url, "%s:%s" % (self.target_rev, self.local_branch), repo=self.repo_path)
            git("checkout", self.local_branch, repo=self.repo_path)
        git("submodule", "init", repo=self.repo_path)
        git("submodule", "update", "--init", "--recursive", repo=self.repo_path)
コード例 #3
0
ファイル: build.py プロジェクト: Ms2ger/css-test-build
def update_dist():
    if not os.path.exists(out_dir) or not vcs.is_git_root(out_dir):
        git = vcs.git
        git("clone", remote_git, out_dir)
    else:
        git = vcs.bind_to_repo(vcs.git, out_dir)
        git("fetch")
        if "origin/master" in git("branch", "-a"):
            git("checkout", "master")
            git("merge", "--ff-only", "origin/master")
コード例 #4
0
ファイル: build.py プロジェクト: faozimipa/csswg-test
def update_dist():
    if not os.path.exists(built_dir) or not vcs.is_git_root(built_dir):
        git = vcs.git
        git("clone", remote_built, built_dir)
    else:
        git = vcs.bind_to_repo(vcs.git, built_dir)
        git("fetch")
        if "origin/master" in git("branch", "-a"):
            git("checkout", "master")
            git("merge", "--ff-only", "origin/master")

    git = vcs.bind_to_repo(vcs.git, built_dir)
    git("config", "user.email", "*****@*****.**")
    git("config", "user.name", "CSS Build Bot")
コード例 #5
0
def update_dist():
    if not os.path.exists(built_dir) or not vcs.is_git_root(built_dir):
        git = vcs.git
        git("clone", remote_built, built_dir)
    else:
        git = vcs.bind_to_repo(vcs.git, built_dir)
        git("fetch")
        if "origin/master" in git("branch", "-a"):
            git("checkout", "master")
            git("merge", "--ff-only", "origin/master")

    git = vcs.bind_to_repo(vcs.git, built_dir)
    git("config", "user.email", "*****@*****.**")
    git("config", "user.name", "CSS Build Bot")
コード例 #6
0
 def rev(self):
     if vcs.is_git_root(self.repo_path):
         return git("rev-parse", "HEAD", repo=self.repo_path).strip()
     else:
         return None