{"id":20240054,"url":"https://github.com/sudoskys/gitpuller","last_synced_at":"2025-07-26T21:11:18.541Z","repository":{"id":50497627,"uuid":"454374709","full_name":"sudoskys/Gitpuller","owner":"sudoskys","description":"使用Androlua实现的一款Github\u0026gitee手机浏览实例，包含GIThub api 类库封装，欢迎贡献","archived":false,"fork":false,"pushed_at":"2022-11-09T02:04:58.000Z","size":2571,"stargazers_count":6,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-10T20:16:45.779Z","etag":null,"topics":["androlua","lua"],"latest_commit_sha":null,"homepage":"","language":"Lua","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sudoskys.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-02-01T12:14:44.000Z","updated_at":"2025-03-10T01:11:12.000Z","dependencies_parsed_at":"2023-01-22T05:20:08.167Z","dependency_job_id":null,"html_url":"https://github.com/sudoskys/Gitpuller","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/sudoskys/Gitpuller","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sudoskys%2FGitpuller","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sudoskys%2FGitpuller/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sudoskys%2FGitpuller/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sudoskys%2FGitpuller/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sudoskys","download_url":"https://codeload.github.com/sudoskys/Gitpuller/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sudoskys%2FGitpuller/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267236822,"owners_count":24057657,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-26T02:00:08.937Z","response_time":62,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["androlua","lua"],"created_at":"2024-11-14T08:42:55.697Z","updated_at":"2025-07-26T21:11:18.483Z","avatar_url":"https://github.com/sudoskys.png","language":"Lua","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Gitpuller\n\n使用Androlua实现的一款Github \u0026 Gitee手机浏览实例，包含GIThub api 类库封装\n\n\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"https://img.shields.io/badge/language-lua-2D4086.svg\"/\u003e\n\u003cimg src=\"https://img.shields.io/badge/license-MIT-BF6040\"/\u003e\n\u003cimg src=\"https://img.shields.io/badge/Androlua+-5.0.19-2D4186\"/\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\n\n项目含有 Gitkit 库文件来使用GithubApi ，并含有一个 列表展开示例。\n\n\n## 库文件自述\n\n库文件位置 `assets_bin/mods/Gitkit.lua` \n示例使用 `assets_bin/action/sub/listv.lua`\n\n库采用回调机制，执行代码需要写在 callback 中。\n\n比如\n\n```\nGithub = Git:new(\"api.github.com\",{debug=true,filemirror=\"raw.githubusercontent.com\"})\nGithub:FlieSelf({i=\"sudoskys\",repo=\"aluabook\",path=\"README.md\"},function(con)\n  print(dump(con))\nend)\n```\n\n## 方法说明\n\n### 构建类\n\n```\nGithub = Git:new(\"api.github.com\",{debug=true,filemirror=\"raw.githubusercontent.com\",alwaysrenew=false})\n```\n\n|参数|说明|\n|------|-----|\n|`debug`|debug开关，提供一个预留参数|\n|`filemirror`|raw文件镜像可选|\n|`alwaysrenew`|是否启用自带的垃圾缓存机制，关闭则不存取|\n\n \n\n\n### 使用方法\n\n\n|接口|所属|描述|返回|\n|------|-----|-----|-----|\n|`Git:dprint`|工具接口|放心的打印数据，由构建使用 debug 参数开关 |传入参数 |\n|`Git:makekey`|内部工具接口|自带AES加密方法，为timedog提供唯一的存储键 |加密后的 Key |\n|`Git:timedog`|内部工具接口|使用全局存储策略的缓冲库设计 |标准 Json |\n|`Git:getinfo`|内部工具接口|获取 URL 数据并解析返回 |标准 Json |\n|`Git:User`|调用接口|调用接口，获取用户信息 |标准 Json |\n|`Git:UserRepo`|调用接口|获取用户的所有公开仓库 |标准 Json |\n|`Git:RepoInfo`|调用接口|获取仓库信息 |标准 Json |\n|`Git:RepoContent`|调用接口|仓库根路径信息 |标准 Json |\n|`Git:FlieSelf`|调用接口|仓库路径文件 |标准 Json |\n|`Git:FlieGet`|调用接口|下载对应文件 | 调用文件下载器 |\n|`Git:FlieBrow`|预留接口|预留浏览文件get的接口 |与 FileGet 相同 |\n\n**返回**\n\n\n\n#### 注意\n\n本库自带一个粗糙的数据缓冲设计，投入生产环境会造成SP存储库体积暴增！\n但是如果频繁请求会导致 403\n\n建议取消 `timedog` 函数的使用，并使用 [Cache.lua](https://gist.github.com/sudoskys/8e6426dc3132d25874b947f1809dfb3c) 数据缓冲库。\n\n\n![counter](https://count.getloli.com/get/@sudoskys-github-Gitpuller?theme=moebooru)\n\n\n\n#### Support\n\n如果你感觉这对你有帮助，可以试着我赞助我一点～\n\n[![s](https://img.shields.io/badge/Become-sponsor-DB94A2)](https://afdian.net/a/Suki1077)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsudoskys%2Fgitpuller","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsudoskys%2Fgitpuller","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsudoskys%2Fgitpuller/lists"}