从存储库中读取代码

Posted

技术标签:

【中文标题】从存储库中读取代码【英文标题】:Reading code from Repository 【发布时间】:2014-09-09 22:09:15 【问题描述】:

我是 Octokit.NET 的新手。尝试使用它登录到我的存储库,然后在 WinRT 8.1 通用应用程序中获取特定存储库。最终,我想将该仓库中的一些 .cs 文件作为文本读取。我正在使用以下代码进行身份验证并获取所有存储库。但是我保留空的错误消息。不确定我是否以正确的方式使用 Octokit-

 var credentials = GithubHelper.Credentials;
 var connection = new Octokit.Connection(new Octokit.ProductHeaderValue("dotnet-test-functional"),new Uri("https://mygit.github.com"))
 
      Credentials = credentials
 ;
 var octokitClient = new Octokit.GitHubClient(connection);

 IReadOnlyList <Octokit.Repository> repos = await octokitClient.Repository.GetAllForCurrent();

如果有人能帮我解决这个问题,我将不胜感激。

谢谢

【问题讨论】:

【参考方案1】:

不确定这里的具体例外情况,但无论如何我会引导您完成这些步骤。

GitHubClient 上的 baseAddress 重载适用于您需要连接到 GitHub Enterprise 环境的情况。如果你只是连接到 github.com,你不需要指定它。

var client = new GitHubClient(new ProductHeaderValue("dotnet-test-functional"));
client.Credentials = GithubHelper.Credentials;
var repos = await client.Repository.GetAllForCurrent();

这应该会返回与当前用户关联的存储库。

但是,Repository Contents APIs 目前尚未实现(队列中有一个pull request,我们一直在讨论如何去做,但还没有准备好)。

【讨论】:

谢谢!我现在可以登录了。您认为 Repository Content API 何时准备就绪。您现在有什么建议可以解决。 恐怕没有确定的日期。【参考方案2】:

octokit.net api 现在只针对 google 用户,其中包含 Repository Contents API。

var AllContent  = await client.Repository.Content.GetAllContent(repo.Owner.Login, repo.Name);

要从文件中获取未编码的文本,您可以这样做

var textOfFirstFile = AllContent[0].Content;

【讨论】:

以上是关于从存储库中读取代码的主要内容,如果未能解决你的问题,请参考以下文章

jenkins 无法从远程存储库中读取

Atlassian Bamboo 无法从远程存储库中读取

Heroku 权限被拒绝。致命:无法从远程存储库中读取。

Bitbucket/SourceTree 问题 > 无法从远程存储库中读取

Heroku“权限被拒绝(公钥)致命:无法从远程存储库中读取”问题

错误:未找到存储库。致命:无法从远程存储库中读取。请确保您拥有正确的访问权限并且 repo 存在