AngKorGit:跨平台原生 Git 客户端
基于 Tauri 与 Rust 构建的免费开源 Git 桌面客户端,支持 macOS、Windows 和 Linux。
- 浏览
- 2
- 访问
- 0
- 下载
- 0
- 版本
- v0.25.0
- 平台
- Windows、macOS、Linux
详细介绍
项目简介
AngKorGit 是一款面向日常 Git 操作的原生桌面客户端,覆盖 macOS、Windows 和 Linux。它用 Rust 通过 libgit2 作为 Git 引擎,界面跑在操作系统自带的 webview 上(Tauri v2),因此启动快、占用小,不需要登录账号,也没有遥测和云端服务。项目采用 MIT 许可证,免费开源。
作者的设计原则是:只把每天都要做的事情做扎实,不堆功能。
主要功能
提交图谱:虚拟化渲染,十万条提交也能顺滑滚动。可以把分支拖到另一个分支上执行 merge 或 rebase,从应用中发起的合并一定是真正的 merge commit。引用标签显示完整名称或折叠成计数,粘贴哈希即可跳转搜索,⌘Z 可以撤销选错分支的合并。
冲突解决:双方内容并排显示,各自带行号。一个复选框取整侧,悬停时点加号取单行,结果区可以直接编辑。在按下 Mark resolved 之前不会改动文件。
Worktrees:在同一仓库的兄弟目录里再开一份检出,用于热修复或给 AI agent 使用,原工作区保持不动。侧边栏列出所有 worktree,各自作为独立标签页打开;检出已在别处打开的分支会直接带你过去。
日常操作:按文件、区块或单行暂存;用摘要和描述提交,支持 amend、revert、reset;交互式 rebase、cherry-pick 单个或多个提交、stash、标签、子模块。Diff 支持内联或并排、词级高亮、minimap、图片 diff 和文件历史。每个仓库内置终端,破坏性操作前有确认对话框,其余操作可撤销。
远程与账号:fetch、pull、push 走与 git 相同的凭据链,支持 SSH key 和访问令牌,同一主机可配多个账号,身份配置按仓库保存而不写进全局 gitconfig。可列出、检出、创建 GitHub、GitLab 和 Bitbucket 的 Pull Request 并挑选 reviewer。提交签名沿用你已有的 git 配置。
AI 辅助(可选):根据暂存区 diff 生成提交信息、解释某次提交或冲突、审查即将提交的内容、撰写 PR 描述。可以用你已登录的 AI CLI(Claude Code、GitHub Copilot CLI、Codex、Gemini CLI、OpenCode、Antigravity、Cursor CLI),也可以用 API key 或本机的 Ollama。请求直接发往你选择的提供方,每项任务都能随时停止。
键盘优先:⌘K 打开命令面板,可搜索应用内所有命令;菜单项旁直接标注快捷键;Escape 每次只关闭一层。
安装与使用
从 releases 页面 下载对应平台的安装包,或用终端安装:
# macOS(Homebrew,同时会清除 Gatekeeper 标记)
brew install --cask cheat2001/tap/angkorgit
也可以在 releases 页面获取 .dmg(macOS 通用包)、x64-setup.exe 或 .msi(Windows)、.AppImage、.deb、.rpm(Linux)。
从源码构建需要 Node 20+、pnpm 10+、Rust stable 以及 Tauri v2 的系统依赖:
pnpm install
pnpm tauri:dev
只想看界面的话,可以跑纯浏览器版本:pnpm dev,访问 http://localhost:1420 。
注意事项
- 构建产物没有购买付费证书签名,首次启动时系统会询问一次。
- macOS 首次打开:把
.dmg里的应用拖进「应用程序」再运行,不要在 dmg 窗口里直接启动;若提示无法打开,到「系统设置 → 隐私与安全性」点击「仍要打开」。 - 首次在 Desktop、Documents、Downloads 中打开仓库时,macOS 会按文件夹请求访问权限。
- 如果权限弹窗反复出现,可用
tccutil reset All dev.angkorgit.app重置记录。 - Windows 会提示发布者未知,选择「更多信息 → 仍要运行」即可。
- Linux 需要 WebKitGTK 4.1 和 libssl。
- 应用之后会自动更新,每次更新在安装前都会做签名校验。
本作品整理自 GitHub 开源项目 cheat2001/angkorgit,原作者 @cheat2001,许可证 MIT。中文介绍由 AI 根据项目 README 整理,以原仓库为准。
更新记录
- v0.25.0当前版本
Pull 前先做预演:若会冲突或被未提交改动挡住,按钮会提前警告并列出相关文件,可只 stash 这些文件;子模块现在跟随仓库记录的提交一起检出,偏离时出现 Update submodule 按钮;无扩展名脚本按 shebang 高亮。
评论