从存储库中读取代码
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;
【讨论】:
以上是关于从存储库中读取代码的主要内容,如果未能解决你的问题,请参考以下文章
Bitbucket/SourceTree 问题 > 无法从远程存储库中读取