我在 Github 上创建了一个存储库。此存储库包含具有文件夹结构和文件的完整项目。如果我必须将此代码嵌入我的网站,我可以通过创建 Gist 并将它们添加到我的网页来实现。
问题是我有一个大项目,添加片段作为 Gist 并不是一件容易的事;此外,它也不会是用户友好的,因为访问者不会了解完整的项目。
所以,我只想以访问者可以浏览代码的方式将整个存储库嵌入到我的网页中。你有什么想法吗?任何 API、插件、代码示例等。
我一直在努力寻找有关这方面的信息,因为StackOverflow和其他相关主题上发布的很多链接都是404.Github API仅说明了如何从命令行执行操作,并且我发现的任何宝石都没有给出这种支持.但是,我知道这是可能的,因为我以前见过它.
我如何获取用户当前的Github登录信息?也就是说,如果用户登录到Github,我想找到它并在我的网站中使用他们的一些用户信息.如果他们没有登录,我想连接到Github登录.
是否有这样的宝石,如果有,它是什么以及它是如何工作的(如果没有足够的文档)?如果没有,那么我如何使用Github API在Ruby中执行此操作?
我想知道如何使用命令行将协作者添加到GitHub中的私人仓库.我在Mac(10.6.8)或Ubuntu 11.04上.
通过克隆,我能够找到 git 存储库的 HEAD 并使用 HEAD 我可以使用 Egit 中的以下代码在 GITHUB 中找到修订 ID:- ObjectId revId = repository.resolve(Constants.HEAD); 如何在不克隆整个存储库的情况下通过只知道我的 GITHub 存储库的 url 来找到此修订 ID,因为克隆整个存储库需要时间。请建议。
GitHub API 中是否有一个端点可以为我提供 GitHub 上所有语言的列表?我正在寻找与 github.com 网站上“趋势”部分中的语言下拉菜单类似的结果。
按照Github API的文档为NodeJS应用创建授权。
我有以下代码:
var _options = {
headers: {
'User-Agent': app.get('ORGANISATION')
},
hostname: 'api.github.com'
};
var oauth2Authorize = function () {
var path = '/authorizations?scopes=repo';
path += '&client_id='+ app.get('GITHUB_CLIENT_ID');
path += '&client_secret='+ app.get('GITHUB_CLIENT_SECRET');
path += '¬e=ReviewerAssistant';
_options.path = path;
_options.method = 'POST';
var request = https.request(_options, function (response) {
var data = "";
response.on('data', function (chunk) {
data += chunk;
});
response.on('end', function () {
console.log(data);
});
});
request.on('error', function (error) {
console.log('Problem with request: '+ …Run Code Online (Sandbox Code Playgroud) 使用 API 将某些非常简单的内容发布到 github 时,我收到“内容无效 Base64”错误。内容是
unit = $("<li class='s clearfix'></li>");
Run Code Online (Sandbox Code Playgroud)
我正在使用 Base64.urlsafe_encode64 对内容进行编码。
content = 'unit = $("<li class=\'s clearfix\'></li>")';
url = "https://api.github.com/repos/#{github_user}/#{github_repo}/contents/#{path}"
RestClient.put(url,
{
message: "my message",
content: Base64.urlsafe_encode64(content),
encoding:"base64" }.to_json,
{
params:{access_token:access_token
},accept:'json'}){ |response, request, result|
puts response.code
puts response
}
Run Code Online (Sandbox Code Playgroud)
我得到这个回应:
422
{"message":"content is not valid Base64",
"documentation_url":"https://developer.github.com/v3/repos/contents/"}
Run Code Online (Sandbox Code Playgroud)
我不明白这对 github 来说如何不能是有效的 base64。并不是所有提交的数据都会发生这种情况。
content='unit = $("<li class=\'s clearfix\'></li>")'
Base64.urlsafe_decode64(Base64.urlsafe_encode64(content))==content
=> true
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
需要从 C# 中的给定链接下载一个 zipball
是的!我搜索了网络和 stackoverflow 并试图完成这个看似不可能的任务几个小时......
具有讽刺意味的是,在 Curl 中,它是单行的,就像魅力一样。
curl -L https://api.github.com/repos/username/reponame/zipball > repo.zip
Run Code Online (Sandbox Code Playgroud)
我想在 C# 中做同样的事情 curl 在上面做...
尝试WebClient.DownloadFile()
给予
禁止 (403)
也尝试了异步方法
0 再见文件(无错误/异常)
尝试 HttpClient Datadownload 和 File stream writer,给出与上述相同的错误。根本没有调用像 streamwirter 这样的接缝,所以它无法访问服务器,这是我问题的主要部分
我安装了 Octokit.NET 但它缺少文档所以我什至不确定从哪里开始这样做(可能是 WebClient 版本,但我确实在 .NET 库中尝试过)
找到了这个答案,但并没有真正理解它(无法在 Octokit.net 中将存储库内容作为 .zip 文件(zipball)获取)
甚至试图在 C# 中运行 .sh 脚本,但它给了我一个例外,它不能在这个操作系统上运行这种 shell
我正在尝试构建一个应用程序来跟踪GitHub"Streaks"(用户已经连续多少天致力于GitHub.)我正在尝试使用GitHub API来做到这一点,但我无法弄清楚在哪里.
如果我不能拉回条纹,如果我能找到一种方法来查看他们是否在某一天(如昨天)犯了错,我可以通过继续检查前一天直到没有提交来递归地确定连胜.
我可以找到有关特定提交的详细信息https://developer.github.com/v3/repos/commits/
我可以为单个用户检索数据:https: //developer.github.com/v3/users/#get-a-single-user
但我似乎无法找到如何查询API以确定用户是否在某一天进行了提交.
我正在尝试使用GraphQL在Github中列出公共存储库,因为它允许我准确地从所需信息中选择哪些信息Object。
使用REST,我只需向发出请求,就可以列出公共存储库https://api.github.com/repositories。可以,但是响应中包含了一些我不需要的东西。因此,我想知道是否可以使用GraphQL来完成相同的工作。
问题是,我找不到Object可用于使用GraphQL列出公共存储库的任何高级存储库。对我来说,似乎只能使用GraphQL列出组织或用户的存储库。例如,这样做:
query{
user(login: "someuser"){
repositories(first: 50){
nodes{
name
}
pageInfo{
hasNextPage
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
那么,如何使用Github的GraphQL端点(如果有的话)列出Github的公共存储库?
我也使用尝试了这一行,search但是我怀疑Github只有54260个存储库,因为该repositoryCount变量返回了我。
query{
search(query:"name:*", type:REPOSITORY, first:50){
repositoryCount
pageInfo{
endCursor
startCursor
}
edges{
node{
... on Repository{
name
}
}
}
}
}
Run Code Online (Sandbox Code Playgroud)