コード例 #1
0
 def get_remote(self, repo: tsrc.Repo, name: str) -> Optional[tsrc.Remote]:
     full_path = self.workspace_path / repo.src
     rc, url = tsrc.git.run_captured(
         full_path, "remote", "get-url", name, check=False
     )
     if rc != 0:
         return None
     else:
         return tsrc.Remote(name=name, url=url)
コード例 #2
0
ファイル: manifest.py プロジェクト: xzr/tsrc
 def _handle_remotes(self, repo_config: Any) -> List[tsrc.Remote]:
     remotes_config = repo_config.get("remotes")
     res = []
     if remotes_config:
         for remote_config in remotes_config:
             remote = tsrc.Remote(name=remote_config["name"],
                                  url=remote_config["url"])
             res.append(remote)
     return res
コード例 #3
0
 def _handle_repo(self, repo_config: RepoConfig) -> None:
     src = repo_config["src"]
     branch = repo_config.get("branch", "master")
     tag = repo_config.get("tag")
     sha1 = repo_config.get("sha1")
     url = repo_config.get("url")
     if url:
         origin = tsrc.Remote(name="origin", url=url)
         remotes = [origin]
     else:
         remotes = self._handle_remotes(repo_config)
     repo = tsrc.Repo(src=src, branch=branch, sha1=sha1, tag=tag, remotes=remotes)
     self._repos.append(repo)