鉄 – 坚固、轻快、原生启动
Gitetsu 是一个用 Java 编写的 GitHub CLI 工具,基于自研的 Kanketsu 命令行解析框架,并借助 GraalVM 原生镜像技术,实现 毫秒级启动、零依赖、单文件分发。
- ⚡ 原生镜像 – 启动时间 < 50ms,内存占用极低
- 🖥️ 双模式运行 – 支持 REPL 交互式 Shell 和脚本模式(CI/CD 友好)
- 🔐 完整认证 – OAuth 设备流登录,Token 持久化存储
- 📦 全面的 GitHub API 覆盖 – Issues、PRs、仓库信息、底层 API 调用
- 📋 Tab 补全 – 在 REPL 中享受智能命令补全
- 🔒 安全 – 内置 SSL 信任库,无需额外配置
从 GitHub Releases 下载对应平台的二进制文件:
- Windows:
gitetsu.exe - Linux / macOS:
gitetsu
将下载的文件放到你的 PATH 目录下,或直接运行。
git clone https://github.com/FascesAedi/Gitetsu.git
cd Gitetsu
mvn clean package构建产物位于 target/gitetsu.exe(Windows)或 target/gitetsu(Unix)。
gitetsu auth login按照提示在浏览器中打开 URL,输入设备码并授权。
gitetsu issue list -r spring-projects/spring-boot -s open -l 10gitetsu在 REPL 中你可以持续输入命令,支持 Tab 补全。
| 命令 | 描述 |
|---|---|
auth login |
通过 OAuth 设备流登录 |
auth status |
查看当前认证状态(用户名) |
| 命令 | 描述 |
|---|---|
issue list |
列出 Issue(支持 --state、--limit、--assignee、--repo) |
issue view |
查看单个 Issue(需要 --number) |
issue create |
创建 Issue(需要 --title,可加 --body、--label、--assignee) |
issue close |
关闭 Issue(需要 --number) |
| 命令 | 描述 |
|---|---|
pr list |
列出 PR(支持 --state、--limit、--base、--repo) |
pr view |
查看单个 PR(需要 --number) |
pr create |
创建 PR(需要 --title、--head,可加 --body、--base、--draft) |
pr merge |
合并 PR(需要 --number,可选 --method) |
| 命令 | 描述 |
|---|---|
repo view |
显示仓库信息(Star、Fork、描述等) |
repo clone |
克隆仓库到本地(调用系统 git) |
| 命令 | 描述 |
|---|---|
api |
直接调用任意 GitHub API 端点,支持 GET/POST/PUT/PATCH/DELETE |
-r, --repo <owner/repo>– 手动指定仓库(若不指定,会自动从当前 Git 目录检测)-h, --help– 显示帮助信息
cd ~/projects/my-repo
gitetsu issue list # 自动使用当前仓库
gitetsu pr list # 同上gitetsu issue create -t "Bug fix" -b "Description" --repo owner/repogitetsu
gitetsu> issue list -s open -l 5
gitetsu> pr view -n 123
gitetsu> exit- Java 21(或 24) – 语言核心
- Kanketsu – 自研轻量级命令行解析框架
- GraalVM Native Image – 原生编译,极致启动速度
- JLine – REPL 和 Tab 补全
- org.json – 轻量 JSON 解析
欢迎提交 Issue 和 Pull Request!请确保代码风格一致,并为新功能添加测试。
本项目使用 Apache License 2.0。
- Kanketsu – 提供优雅的命令行解析能力
- GraalVM – 让 Java 原生起飞
- GitHub API – 强大的 REST API