⚡ 69 个开发者工具,始终保持最新 — 上游每次发布后数小时内即可通过 apt 获取。 加入 Discord

🎁 apt 镜像需要订阅。免费试用全部工具 14 天,无需银行卡。 查看价格 · 🆓 有一个永久免费的镜像 · 🔐 apt 报 401?

🪢 在 Debian 上安装最新版 jjui

Jujutsu (jj) 版本控制系统的终端界面

最新版本:0.10.12 · 更新于 2026-11-06
来源版本
deb.griffo.io0.10.12 ✅
官方 Debian🚫 未收录
← 返回首页
📌 要在特定版本上安装? Debian 12 (bookworm) · Debian 13 (trixie) · Debian 14 (forky) · Debian Sid

什么是 jjui?

jjui 是 Jujutsu 的终端用户界面,Jujutsu 是一个兼容 Git、通过 jj 命令使用的版本控制系统。在 jj 仓库中运行它,它会显示修订图,并让你直接在图上操作:借助自动补全修改 revset 来决定显示哪些修订,变基单个修订或整个分支,压缩、拆分和放弃修订,移动书签,打开一个修订查看它的文件和 diff 并逐个恢复文件,在修订图旁预览 jj show 和 jj diff 的输出,通过 Git 菜单推送和拉取,以及浏览或恢复操作日志。所有操作都可以用键盘或鼠标完成。jjui 由 Ibrahim Dursun 用 Go 编写,采用 MIT 许可证。

🚀 为什么最新版本很重要: jjui 与 Jujutsu 同步演进:jj 的新版本会改变命令和输出,jjui 随之跟进,并在大多数版本中加入新的操作、改进补全并修复问题。Debian 根本没有打包 jjui,因此没有本仓库的话,想保持最新只能每次手动下载新版本。在这里,一条普通的 apt upgrade 就会同时更新 jjui 和它所依赖的 jj。

⚡ jjui 的主要功能

🌳 实时的修订图

jjui 打开的就是 jj log 打印的那张图,但你可以在其中移动、选择修订并对其操作,每次修改后修订图都会重新绘制。

🔎 带自动补全的 revset

编辑屏幕顶部的 revset 来选择显示哪些修订;函数和别名会在输入时自动补全,不必记住 revset 语言。

✂️ 变基、压缩、拆分、放弃

把单个修订或整个分支变基到另一个修订上,把修订压缩进其父修订,一分为二,放弃它,或者移动书签,全部在修订图中完成,并立即看到结果。

📄 文件、diff 与预览

打开一个修订,列出它改动的文件,阅读其 diff 并交互式地恢复文件,或者保留一个预览面板,显示当前所选内容的 jj show 或 jj diff 输出。

🔄 Git 菜单与操作日志

不离开修订图即可通过 Git 菜单推送和拉取,还能浏览操作日志,查看发生了哪些变化,并把仓库恢复到之前的状态。

🖱️ 键盘、鼠标、Lua 与主题

每个操作都有快捷键(按 ? 列出全部),鼠标同样可用。Lua 脚本可以添加你自己的操作,主题可以更改配色。

🚀 始终领先于官方软件源: Debian 和 Ubuntu 在发布时冻结软件包版本,而本仓库通常在上游发布后数小时内就发布新版本。一条简单的 apt upgrade 就能让你保持最新。

📦 从 deb.griffo.io 安装

运行命令

第 1 步:添加仓库

sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | sudo gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(. /etc/os-release; echo ${DEBIAN_CODENAME:-${UBUNTU_CODENAME:-$VERSION_CODENAME}}) main" | sudo tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
sudo apt update
install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(. /etc/os-release; echo ${DEBIAN_CODENAME:-${UBUNTU_CODENAME:-$VERSION_CODENAME}}) main" | tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
apt update
sudo apt install extrepo
sudo extrepo enable griffo
sudo apt update

🆓 有一个永久免费的镜像。 deb-free.griffo.io 永久免费提供软件包 — 无需账号、无需订阅,最多落后上游 2 个月,安全修复立即发布。目前收录 cliamp、Forgejo Runner、Ghostty、lazydocker、Oh My Posh、Uncloud 和 Zed;jjui 不在其中,因此今天只能通过上面的仓库安装 — 提出请求即可将其加入。

免费镜像的工作方式 →

🧩 关于 extrepo 选项。 extrepo 是 Debian 官方用于管理第三方仓库的工具:它会替你写好 sources 文件并安装签名密钥,并在使用前先对照签名元数据校验该密钥。本仓库以 griffo 之名登记其中,永久免费镜像则为 griffo-free,因此在 Debian(bookworm、trixie、forky、sid)上,上面的命令就是全部配置。

extrepo 只负责 sources 文件和密钥,订阅凭据仍然要写入 /etc/apt/auth.conf.d/deb.griffo.io.conf。Ubuntu 不在覆盖范围内,因为 extrepo 只发布 Debian 各套件的元数据:在 Ubuntu 上请使用 sudo 或 root 的命令。

第 2 步:安装 jjui

# 安装最新版 jjui(会一并安装提供 jj 的 jujutsu)
sudo apt install jjui

# 验证安装
dpkg -s jjui | grep Version
# 安装最新版 jjui(会一并安装提供 jj 的 jujutsu)
apt install jjui

# 验证安装
dpkg -s jjui | grep Version

第 3 步:第一次运行

# jjui 通过 jj 工作,所以要在 jj 仓库中启动
cd ~/src/myproject

# 已有的 Git 检出?先让 jj 与它共存(colocate)
jj git init --colocate

# 打开修订图
jjui

# 在 jjui 中按 ? 查看快捷键,按 q 退出

🎯 基本用法示例

启动和配置 jjui:

# 打开当前仓库的修订图
jjui

# 在 $EDITOR 中编辑配置(快捷键、主题、Lua 操作)
jjui -config

# jjui 运行的是 PATH 中的 jj;查看它的版本
jj --version

在 jjui 中:

# 按 ? 查看当前视图的所有快捷键
# 修改顶部的 revset(带自动补全)来选择显示的内容
# 选中一个修订,然后变基、压缩、拆分或放弃它,或者移动书签
# 打开一个修订,列出它的文件,阅读 diff 并逐个恢复文件
# 在修订图旁预览 jj show / jj diff,或打开操作日志恢复某个状态

# 通过 Git 菜单推送和拉取,无需离开修订图

保持最新:

# jjui 和 jj 随系统其他软件一起更新
sudo apt update && sudo apt upgrade

# 查看已安装的版本以及可用的最新版本
apt policy jjui jujutsu

# 卸载(jj 仍会保留)
sudo apt remove jjui
# jjui 和 jj 随系统其他软件一起更新
apt update && apt upgrade

# 查看已安装的版本以及可用的最新版本
apt policy jjui jujutsu

# 卸载(jj 仍会保留)
apt remove jjui

🔧 工具集成

jjui 是 jj 的前端,凡是用 jj 的地方都适合它:

  • Jujutsu:每个操作都会运行 jj 命令,因此 jjui 看到的仓库、配置和 revset 别名与 jj 本身完全相同;软件包依赖 jujutsu (>= 0.37),而 deb.griffo.io 为每个版本都打包了 Jujutsu,所以 apt 会随 jjui 一起安装它
  • Git 远程仓库:在共存(colocated)仓库中,通过 Git 菜单推送和拉取会使用你平常的 Git 远程仓库和现有凭据
  • 你的编辑器:jjui -config 会在 $EDITOR 中打开配置文件,快捷键、主题和自定义操作都在那里
  • Lua 脚本:用 Lua 编写自己的操作并绑定到按键上,用于你经常执行的 jj 命令
  • 主题:修订图、选中项和各个面板的颜色来自一个主题,你可以更换它或自己编写
  • 鼠标:在任何支持鼠标的终端中,点击即可选择修订,滚动即可浏览修订图和预览
  • 文档:上游没有提供 man 手册页,完整指南位于 idursun.github.io/jjui,在 jjui 中按 ? 可列出快捷键

🚀 为什么选择 deb.griffo.io?

📊 仓库对比:
  • 官方 Debian: 没有打包 jjui,在默认系统上 apt install jjui 会失败
  • 上游下载:从 GitHub 发布页下载只含一个二进制文件的 zip,手动复制到 PATH 中,每次发布都得重新下载,jj 还要另外安装
  • 从源码构建:需要 Go 工具链,每次发布都要执行一次 go install,jj 仍需通过其他方式安装
  • deb.griffo.io: 最新版本,并自动更新

📦 软件包构建仓库

Debian 软件包在这个 GitHub 仓库中自动构建和维护:

🔗 相关软件包

deb.griffo.io 同样提供:

🎯 特别适合: 希望在变基、压缩和拆分时眼前就有修订图的 Jujutsu 用户、想在看得见修订图的情况下学习 jj 的 Git 用户、经常重整提交历史的人,以及喜欢也能用鼠标操作的终端工具的人。

📦 本仓库最近发布

❓ 常见问题

jjui 在官方 Debian 软件源中吗?

不在, 官方 Debian 源没有打包 jjui。本仓库目前是唯一的 apt 来源,提供 jjui 0.10.12。

如何在 Debian 上安装最新版 jjui?

按上方说明一次性添加 deb.griffo.io 仓库,然后运行:sudo apt install jjui。之后通过常规的 sudo apt upgrade 获取新版本。

软件包是否有签名?如何构建?

每个软件包都使用仓库的 GPG 密钥(EA0F721D231FDD3A0A17B9AC7808B4DD62C41256)签名,并基于上游发布在公开的 GitHub 仓库中构建,任何人都可以审查。

支持哪些 Debian 版本?

Debian 12 Bookworm、Debian 13 Trixie、Forky 和 Sid。

开始 14 天免费试用

输入邮箱,我们会在几分钟内发送你的 apt 凭据。无需银行卡。

它将成为你的 apt 登录名。如果继续使用,请用同一邮箱付款,你的机器上无需任何改动。

每个邮箱仅限一次试用。结束前两天我们会发送保留访问的链接。如果你不操作,访问将停止,不会产生任何费用。