本文档介绍 Cursor Review 命令行界面 (gt) 中所有可用的命令和标志。
该命令行界面完全支持多个 Git 工作树。从 gt 版本 1.8.4 起,gt 在大多数情况下不会修改已在其他 工作树 中检出的分支。
每个命令都会说明其功能和运行方式。带有标志的命令下方提供快速参考行和可折叠的标志表。要查看最新详情,请运行 gt COMMAND --help (将 COMMAND 替换为命令名称) 。
全局标志
全局标志可与任何命令一起使用:
| 选项 |
描述 |
--help |
显示命令的帮助信息。 |
--allCommands |
不会显示在全局帮助信息中。运行 gt --help --all 可显示完整的命令帮助列表。 |
--cwd <path> |
执行操作时使用的工作目录。 |
--debug |
将调试输出写入终端。 |
--interactive |
启用提示词、分页器和编辑器等交互功能。默认启用。使用 --no-interactive 禁用。 |
--verify |
启用 Git 钩子。默认启用。使用 --no-verify 禁用。 |
--quiet |
尽量减少终端输出。隐含 --no-interactive。 |
不带标志的命令
不接受标志的命令。参数用方括号括起。
| 命令 |
描述 |
用法 |
add [args..] |
透传给 git add。 |
gt add [args..] |
bottom |
切换到当前分支栈中最接近主干的分支。 |
gt bottom |
changelog |
显示 命令行界面 更新日志。 |
gt changelog |
cherry-pick [args..] |
透传给 git cherry-pick。 |
gt cherry-pick [args..] |
children |
显示当前分支的子分支。 |
gt children |
completion |
设置 bash 或 zsh 的 Tab 补全。 |
gt completion |
config |
配置 命令行界面。 |
gt config |
dash |
打开 Cursor Review 仪表盘。 |
gt dash |
demo [demoName] |
运行交互式演示,了解 命令行界面 工作流。 |
gt demo [demoName] |
docs |
显示 命令行界面 文档。 |
gt docs |
fish |
设置 fish 的 Tab 补全。 |
gt fish |
freeze [branch] |
冻结一个分支及其下层分支,禁止本地修改。 |
gt freeze [branch] |
guide [title] |
阅读有关使用 gt 的详细指南。 |
gt guide [title] |
parent |
显示当前分支的父分支。 |
gt parent |
pop |
删除当前分支,但保留工作树中文件的状态。 |
gt pop |
rebase [args..] |
透传给 git rebase。 |
gt rebase [args..] |
reset [args..] |
透传给 git reset。 |
gt reset [args..] |
restore [args..] |
透传给 git restore。 |
gt restore [args..] |
top |
切换到当前分支栈的顶端分支。 |
gt top |
unfreeze [branch] |
解冻一个分支及其上层分支,重新允许本地修改。 |
gt unfreeze [branch] |
unlink [branch] |
解除该分支当前关联的 PR。 |
gt unlink [branch] |
upgrade |
将 命令行界面 升级到最新稳定版本。 |
gt upgrade |
带标志的命令
接受标志的命令概览。在下方列表中展开命令以查看标志详情。
| 命令 |
描述 |
用法 |
abort |
中止因变基冲突而暂停的当前 Graphite 命令。 |
gt abort |
absorb |
将暂存的更改修订到当前分支栈中的相关提交,然后重新整理上层分支。 |
gt absorb |
aliases |
编辑命令别名。 |
gt aliases |
auth |
添加认证令牌,以便 命令行界面 能够在 GitHub 上创建和更新 PR。 |
gt auth |
checkout |
切换到某个分支;如果省略,则打开交互式选择器。 |
gt checkout [branch] |
continue |
继续最近因变基冲突而暂停的 Graphite 命令。 |
gt continue |
create |
创建一个叠加在当前分支之上的分支,并提交暂存的更改。 |
gt create [name] |
delete |
删除分支和 命令行界面 元数据;子分支将重新整理到父分支上。 |
gt delete [name] |
down |
切换到当前分支的父分支。 |
gt down [steps] |
feedback |
向 命令行界面 维护者发送反馈。 |
gt feedback [message] |
fold |
将分支合并到其父分支,更新后代分支并重新整理。 |
gt fold |
get |
从远程同步主干到指定分支或 PR 的各分支。 |
gt get [branch] |
info |
显示分支信息。 |
gt info [branch] |
init |
选择主干分支后,在此仓库中初始化 命令行界面。 |
gt init |
log |
显示分支栈 (gt log、gt log short、gt log long) 。 |
gt log [command] |
merge |
合并从主干到当前分支的所有分支的 PR。 |
gt merge |
modify |
修订当前提交或创建新提交;重新整理后代分支。 |
gt modify |
move |
将当前分支变基到目标分支,并重新整理后代分支。 |
gt move |
pr |
打开分支或 PR 编号对应的 PR 页面。 |
gt pr [branch] |
rename |
重命名分支并更新元数据 (会断开与 PR 分支的关联) 。 |
gt rename [name] |
reorder |
重新排序主干与当前分支之间的分支;重新整理后代分支。 |
gt reorder |
restack |
将每个分支变基到其父分支,使历史记录包含父分支的提交。 |
gt restack |
revert |
创建一个还原主干提交的分支 (实验性) 。 |
gt revert [sha] |
split |
将当前分支拆分为多个分支。 |
gt split |
squash |
压缩当前分支上的所有提交,并重新整理上层分支。 |
gt squash |
submit |
将当前分支栈推送到 GitHub,并创建或更新 PR。 |
gt submit |
sync |
与远程同步,清理已合并的 PR 分支,并重新整理。 |
gt sync |
track |
通过选择父分支开始跟踪分支。 |
gt track [branch] |
trunk |
显示当前分支的主干。 |
gt trunk |
undo |
撤销此工作树中最近的 命令行界面 修改操作。 |
gt undo |
untrack |
停止跟踪分支 (及其子分支) 。 |
gt untrack [branch] |
up |
切换到当前分支的子分支。 |
gt up [steps] |
参数标志参考
gt abort
| 标志 |
描述 |
-f, --force |
不要求确认,立即中止。 |
gt absorb
| 标志 |
描述 |
-a, --all |
吸收前暂存尚未暂存的更改 (不包括未跟踪的文件) 。 |
-d, --dry-run |
输出目标提交,但不应用更改。 |
-f, --force |
无需确认,直接应用代码块。 |
-p, --patch |
吸收前选择要暂存的代码块。 |
gt 别名
| 标志 |
描述 |
--legacy |
将旧版别名添加到配置中。 |
--reset |
重置别名配置。 |
gt 认证
| 标志 |
描述 |
-t, --token |
Cursor Review 命令行界面设置中的认证令牌。 |
gt checkout [分支]
| 标志 |
描述 |
-a, --all |
显示所有已配置主干上的分支。 |
-u, --show-untracked |
包括未跟踪的分支。 |
-s, --stack |
将选择范围限定为当前分支栈。 |
-t, --trunk |
切换到当前主干。 |
gt continue
| 标志 |
描述 |
-a, --all |
继续前暂存所有更改。 |
gt create [name]
| 标志 |
描述 |
--ai |
使用 AI 生成分支名称和提交信息。 |
-a, --all |
暂存所有更改,包括未跟踪的文件。 |
-i, --insert |
插入到当前分支与其子分支之间。 |
-m, --message |
提交信息。 |
--no-ai |
禁用 AI 生成 (覆盖 --ai) 。 |
-p, --patch |
选择要暂存的代码块。 |
-u, --update |
暂存已跟踪文件的更新。 |
-v, --verbose |
在提交信息模板中显示提交 diff。 |
-o, --onto |
基于另一个分支创建。 |
gt delete [名称]
| 标志 |
描述 |
-c, --close |
在 GitHub 上关闭关联的 PR。 |
--downstack |
同时删除上游分支。 |
-f, --force |
即使未合并或未关闭也强制删除。 |
--upstack |
同时删除子分支。 |
向下移动 [步数]
| 标志 |
描述 |
-n, --steps |
向下遍历的层数。 |
gt 反馈 [消息]
| 标志 |
描述 |
-d, --with-debug-context |
包含过去 24 小时的日志。 |
gt fold
| 标志 |
描述 |
-c, --close |
关闭 GitHub 上关联的 PR。 |
-k, --keep |
保留当前分支名称。 |
--stack |
将整个分支栈合并为一个分支。 |
gt 获取 [分支]
| 标志 |
描述 |
--checkout |
同步后检出目标 (默认值;使用 --no-checkout 跳过) 。 |
--delete-all |
删除已合并或已关闭的分支,无需确认。 |
-d, --downstack |
当分支已存在于本地时,不同步上层分支。 |
-f, --force |
用远程分支覆盖已获取的分支。 |
--restack |
无冲突地重新整理 (默认值;使用 --no-restack 跳过) 。 |
-U, --unfrozen |
将新分支检出为未冻结状态。 |
-u, --remote-upstack |
包含远程的上层 PR。 |
gt info [分支]
| 标志 |
描述 |
-b, --body |
显示 PR 正文。 |
-d, --diff |
显示与父分支的 diff (覆盖 --patch) 。 |
-p, --patch |
按提交显示更改。 |
-s, --stat |
Diffstat (若均未设置,则隐含 --diff) 。 |
gt init
| 标志 |
描述 |
--reset |
停止跟踪所有分支。 |
--trunk |
主干分支名称 (省略时会提示输入) 。 |
gt log [命令]
| 标志 |
描述 |
-a, --all |
所有主干中的分支。 |
--classic |
旧版简洁日志样式。 |
-r, --reverse |
反向打印。 |
-u, --show-untracked |
包含未跟踪分支。 |
-s, --stack |
仅显示当前分支栈。 |
-n, --steps |
限制上层/下层深度 (自动启用 --stack) 。 |
gt 合并
| 标志 |
描述 |
-c, --confirm |
合并前进行确认。 |
--dry-run |
列出将会合并但不会实际合并的 PR。 |
gt modify
| 标志 |
描述 |
-a, --all |
暂存所有更改。 |
-c, --commit |
创建新提交,而不是修订现有提交。 |
-e, --edit |
编辑提交消息。 |
--interactive-rebase |
启动交互式变基。 |
--into |
修改下层分支。 |
-m, --message |
提交消息。 |
-p, --patch |
选择代码块。 |
--reset-author |
修订时将作者设为当前用户。 |
-u, --update |
暂存已跟踪文件的更新。 |
-v, --verbose |
在模板中显示提交 diff。 |
gt move
| 标志 |
描述 |
-a, --all |
在交互式选择中显示所有主干。 |
--only |
仅移动此分支。 |
-o, --onto |
目标分支。 |
-s, --source |
要移动的分支 (默认值:当前分支) 。 |
gt pr [branch]
gt rename [名称]
| 标志 |
描述 |
-f, --force |
重命名关联未关闭 GitHub PR 的分支。 |
gt reorder
| 标志 |
描述 |
--stack |
包含直至 gt top 的完整上游分支栈。 |
gt 重新整理
| 标志 |
描述 |
--branch |
指定运行所用的 Branch (默认值:当前) 。 |
-d, --downstack |
仅此 Branch 及其祖先分支。 |
-o, --only |
仅此 Branch。 |
-u, --upstack |
仅此 Branch 及其后代分支。 |
gt revert [sha]
gt split
| 标志 |
描述 |
-c, --commit, --by-commit |
按 commit 拆分。 |
-f, --file, --by-file |
按路径规范拆分 (可重复指定) 。 |
-h, --hunk, --by-hunk |
按 hunk 拆分。 |
gt squash
| 标志 |
描述 |
--edit |
编辑提交消息。 |
-m, --message |
新消息。 |
-n, --no-edit |
保留消息 (覆盖 --edit 的设置) 。 |
gt submit
| 标志 |
描述 |
--ai |
使用 AI 为新 PR 生成标题和描述。 |
--always |
即使没有变更也推送。 |
--branch |
从此分支运行。 |
--cli |
在 CLI 中编辑 PR 元数据。 |
--comment |
添加 PR 评论。 |
-c, --confirm |
推送前确认。 |
-d, --draft |
将新 PR 创建为草稿。 |
--dry-run |
仅生成报告。 |
-e, --edit |
编辑所有 PR 的元数据。 |
--edit-description |
提示输入描述。 |
--edit-title |
提示输入标题。 |
-f, --force |
强制推送。 |
--ignore-out-of-sync-trunk |
即使主干有偏差也提交。 |
-m, --merge-when-ready |
标记为准备就绪后合并。 |
--no-ai |
跳过 AI。 |
-n, --no-edit |
跳过行内编辑。 |
--no-edit-description |
跳过描述输入提示。 |
--no-edit-title |
跳过标题输入提示。 |
-p, --publish |
发布已提交的 PR。 |
--rerequest-review |
重新请求评审。 |
--restack |
提交前重新整理。 |
-r, --reviewers |
设置审阅人。 |
-s, --stack |
提交下游分支 (使用 --no-stack 缩小范围) 。 |
--target-trunk |
新 PR 的远程主干。 |
-t, --team-reviewers |
团队审阅人的 slug。 |
-u, --update-only |
仅更新现有 PR。 |
-v, --view |
在浏览器中打开 PR。 |
-w, --web |
在网页端编辑元数据。 |
gt sync
| 标志 |
描述 |
-a, --all |
在所有主干之间同步。 |
-d, --delete-all |
不经提示,删除已合并或已关闭的分支。 |
-f, --force |
跳过确认提示。 |
--restack |
尽可能重新整理 (默认值;使用 --no-restack 可跳过) 。 |
gt track [分支]
| 标志 |
描述 |
-f, --force |
将父分支设为最新的已跟踪祖先分支。 |
-p, --parent |
显式指定父分支 (已跟踪分支) 。 |
gt 主干
| 标志 |
描述 |
--add |
添加另一个主干。 |
-a, --all |
显示所有已配置的主干。 |
gt undo
| 标志 |
描述 |
-f, --force |
无需确认即可撤销操作。 |
gt 取消跟踪 [分支]
| 标志 |
描述 |
-f, --force |
有子分支时,无需确认即可取消跟踪。 |
gt up [steps]
| 标志 |
描述 |
-n, --steps |
向上遍历分支栈的层数。 |
--to |
前往目标分支。 |