先说实话:FoldRender 能把仓库放到你的手机上,让你读一个 PR 涉及的代码,带高亮、文件树和整个工作区的 grep。它不能显示 GitHub 上的 PR,不能发评论或批准,它的 diff 查看器虽然在这个版本里,但没有验证过。下面是能用的那部分。
FoldRender 在 Play 商店上的名字是 FoldRender: Git Repo Reader,包名 dev.foldrender.app,免费,面向全球发行。照常安装即可 —— 不会弹出要你打开「允许来自此来源的应用」的提示,更新也会自动送达。应用声明了 minSdk 30,所以需要 Android 11 或更新的版本;如果设备低于这个版本,Play 会直接告诉你,而不是让你装上一个跑不起来的版本。
点顶栏里的分支图标,把 HTTPS 地址粘贴到 筛选,或输入 owner/repo,点 获取代码。公开仓库可以匿名克隆。注意,这克隆的是仓库,不是 PR:FoldRender 是 git 客户端,不是 GitHub 客户端,它没有 PR、评审讨论或批准这些概念。
几千个文件第一次列出要在一个转圈后面等很久,没有进度提示。大约 4,600 个文件时,这个等待很明显。它最终会完成。
你得知道是哪些文件 —— 在浏览器里的 PR 页面上看,或者从把你叫过来的那条通知里看。然后用左栏:文件标签页可以直接导航到某个路径,搜索标签页可以在工作区里 grep 一个符号,按字面或正则,结果以 path:line 行的形式陆续出现,点一下就在那一行打开文件。
源文件会对整个文件做词法高亮,带行号,文件上方那一行显示识别出的语言和行数,长行可以用换行开关处理。这正是在手机上做评审需要、而手机网页版 diff 给不了的:改动所在的整个文件,在一栏好读的版面里,仓库的其余部分在文件树里点一下就到。
拿到整个仓库而不只是一个 diff,意义就在上下文。grep 这个函数的其他调用点。打开旁边的测试文件。读 README 里解释这个模块的那一节。每个文档的滚动位置都会保存,所以在三个文件之间来回切换,哪个都不会丢掉读到的位置。
Git 面板的标题栏显示当前分支、领先和落后的提交数,以及工作区是否干净。分支按钮列出的是仓库的本地分支 —— 普通克隆之后只有默认分支,所以只存在于远程的特性分支不会有对应的按钮。Pull 和最近的提交列表(每条显示短 id 和作者)也在这个界面上。
带高亮的整个文件、文件树、整个仓库的 grep。和在手机浏览器里看一个窄窄的 diff 相比,这是另一种、而且往往更好的评审方式 —— 但它是阅读,本页不会把它包装成批准。
这个版本里有一个 Myers 行级 diff,行内按词标出差异,宽屏时左右并排,窄屏时上下合并;文字类文件按句子粒度做 diff,所以改写过的段落会显示成一句改动,而不是整行重写。没有人把它完整跑通过,所以它列在这里,而不在操作步骤里。
Credentials & identity 表单要填主机、用户名和个人访问令牌;令牌用 Android 硬件密钥库里的 AES-GCM 密钥加密,永远不会再读回界面。使用 GitHub 登录走的则是 OAuth 设备码流程。
如实列出的清单 —— 包括已随版本发布但没有验证过的行为 —— 让你在安装前就能判断,这个版本能不能做你要做的那件事。
大家真正会用的四个应用,以及把它们区分开的那一条:仓库最后在不在手机上,到了手机上有没有东西把它渲染出来。
| 工具 | 下载价格 | 从哪里获取 | 克隆到设备上 | 渲染 PDF / Jupyter 笔记本 / Markdown | 编辑器或 shell |
|---|---|---|---|---|---|
| FoldRender | US$0 | Google Play,全球 | 能 —— HTTPS,公开仓库可匿名 | 能 —— 原生 Compose 渲染器 | 没有,有意为之:它是阅读器,不是 IDE |
| GitHub Mobile | US$0 | Google Play 和 App Store | 不能 —— 它读的是托管在 GitHub 上的仓库 | 只有 GitHub 自己渲染的内容,需联网 | 可在 PR 里编辑文件 |
| Termux + git | US$0 | F-Droid 或 GitHub | 能 —— 真正的 git 命令行 | 不能 —— 只有终端文本 | 有,完整的 shell,任何命令行编辑器都能用 |
| MGit 1.7.0 (2023) | US$0 | 只在 F-Droid | 能 —— 克隆、拉取、推送,HTTPS 或 SSH 密钥 | 不能 | 没有 —— 它自己的页面写明不带文本编辑器 |
价格指的是下载价格。GitHub Mobile 的功能取决于你的 GitHub 套餐;Termux 和 MGit 都是自由软件。MGit 的版本和日期来自它在 F-Droid 上的页面。
这里的每个数字都是从正式发布的版本里读出来的,或者来自本页底部列出的一手资料 —— 没有为了好看往上凑整。
minSdk 30,也就是 2020 年随 Android 11 发布的 API 级别;编译和目标版本都是 API 36。上面这些数字背后的一手文档,任何一条你都可以自己核对,不必听我们说。
git-clone 参考文档 —— 获取代码执行的操作,由定义它的项目自己来说明minSdk 定为最低要求的那个版本本页最后核对于 2026-08-27。