很多人都在手机上“看代码”,但很少有人真的在手机上“管理仓库”。原因很简单:大多数移动端 Git 工具要么功能不全,要么交互别扭,遇到分支、冲突、提交历史时就开始“劝退”。
ArkGit 想解决的,就是这件事。
它是一个专为 HarmonyOS 设计的原生 Git 客户端,前端用 ArkTS/ArkUI,底层通过 C++ NAPI 接入 libgit2 / libssh2 / mbedtls,目标很直接:让移动端也能完成靠谱、流畅、可预期的 Git 工作流。
从“能用”到“顺手”,ArkGit 做了什么
日常用 Git,核心动作并不复杂:拉取、暂存、提交、推送、切分支、看历史、必要时 Cherry-pick。难点在于把这些动作放到手机屏幕里后,依然保持清晰和稳定。
ArkGit 目前覆盖了这些关键能力:
- 仓库列表管理(搜索、删除、本地仓库入口)
- HTTP/HTTPS/SSH 克隆,带进度与超时处理
- 文件、状态、分支/标签、提交记录、文件搜索五大核心 Tab
- 提交、拉取、推送、暂存/取消暂存、丢弃、Cherry-pick
- 凭据管理、提交身份管理、SSH 密钥查看/重生成
- 集成 hm_code_editor,支持 75+ 语言语法高亮
我最满意的五个体验瞬间
你打开 App 先看到的是仓库列表,而不是一堆复杂术语。这个入口非常关键,因为它决定了“管理多个项目”是不是轻松。
接着是提交列表和图谱视图。相比纯文本日志,图谱能更直观地表达分支演进关系,尤其在多人协作时,你会更快看懂“这条线是怎么来的”。
分支和标签页把“切分支、看远程分支、推标签”这类高频动作放在了同一语义空间里,不用在菜单里反复跳转。
状态页则更偏“执行面板”:你能清楚看到当前分支、改动文件、暂存区状态,再完成提交和推送。每一步反馈都很明确,心里更有底。
最后是移动端代码编辑。集成编辑器后,很多“小修小补”不再需要等回到电脑,尤其是改注释、修配置、补一行逻辑这种场景,效率提升很明显。
为什么是 ArkTS + C++ NAPI 的组合
如果只做一个“仓库浏览器”,纯前端也许够用。
但 ArkGit 要做的是完整 Git 体验,底层能力必须扎实。
ArkTS/ArkUI 负责交互层,优势是 HarmonyOS 原生体验和开发效率。
C++ NAPI 负责 Git 核心能力,优势是性能、稳定性和对成熟库生态的复用。
这套组合的意义在于:上层界面可以灵活演进,下层能力保持专业可靠。
README 里导出的 NAPI 方法也体现了这个思路,比如 history、getCommitDetail、getStatus、pull、push、cherryPick 等,都是围绕真实工作流设计,而不是“演示型 API”。
这类工具,真正适合谁
ArkGit 不是要替代桌面 IDE,它更像你的“随身 Git 控制台”:
- 通勤路上快速 review 最近提交
- 紧急场景先修一个小问题并提交
- 远程协作时快速定位分支状态
- 在移动设备上完成轻量但完整的仓库操作
当你把这些碎片时间串起来,会发现移动端 Git 不是“能不能做”,而是“值不值得做好”。ArkGit 选择了后者。
如果你也在做 HarmonyOS 原生应用,或者正好对 ArkTS 与 C++ 混合架构感兴趣,欢迎交流你最在意的场景。我也在继续把提交图谱、冲突处理反馈和多人协作细节打磨得更顺滑。