<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>publish on SOW</title>
    <link>https://sow.pgsty.com/zh/tags/publish/</link>
    <description>Recent content in publish on SOW</description>
    <generator>Hugo</generator>
    <language>zh-CN</language>
    
    
    
      <lastBuildDate>Fri, 28 Aug 2026 18:32:04 +0800</lastBuildDate>
    
    
      <atom:link href="https://sow.pgsty.com/zh/tags/publish/index.xml" rel="self" type="application/rss+xml" />
    
    <item>
        <title>SOW v0.4.0</title>
        <link>https://sow.pgsty.com/zh/blog/release/sow-v0.4.0/</link>
        <pubDate>Mon, 24 Aug 2026 00:00:00 +0000</pubDate>
        
        <guid>https://sow.pgsty.com/zh/blog/release/sow-v0.4.0/</guid>
        <description>&lt;p&gt;SOW 0.4.0 是一次面向 Managed 仓库的完整性与恢复版本：它明确了深度校验的 I/O 契约，&#xA;禁止跨无关密钥拼装 RPM 信任，提供可审计的发布目标可变配置修正路径，并补齐 v0.3 迁移与&#xA;发布中断恢复的剩余缺口。&lt;/p&gt;</description>
      </item>
    <item>
        <title>协同发布决策记录</title>
        <link>https://sow.pgsty.com/zh/blog/design/coordinated-publication/</link>
        <pubDate>Fri, 14 Aug 2026 00:00:00 +0000</pubDate>
        
        <guid>https://sow.pgsty.com/zh/blog/design/coordinated-publication/</guid>
        <description>&lt;div class=&#34;td-callout td-callout--important&#34; role=&#34;note&#34;&gt;&#xA;  &lt;div class=&#34;td-callout__title&#34;&gt;&lt;i class=&#34;td-callout__icon fa-solid fa-circle-exclamation&#34; aria-hidden=&#34;true&#34;&gt;&lt;/i&gt;&lt;span class=&#34;td-callout__label&#34;&gt;SOW 0.4.0 已完成最终决策&lt;/span&gt;&lt;/div&gt;&#xA;  &lt;div class=&#34;td-callout__body&#34;&gt;&#xA;&lt;p&gt;本记录的早期版本曾提议采用 rclone Executor、&lt;code&gt;publish --dry-run&lt;/code&gt; 与独立&#xA;&lt;code&gt;sow audit&lt;/code&gt; 命令。这些表面均未进入 0.4.0：SOW 不依赖 rclone，&lt;code&gt;publish&lt;/code&gt; 没有&#xA;&lt;code&gt;--dry-run&lt;/code&gt;，&lt;code&gt;sow audit&lt;/code&gt; 也不是有效命令。&lt;/p&gt;</description>
      </item>
    <item>
        <title>SOW v0.2.0</title>
        <link>https://sow.pgsty.com/zh/blog/release/sow-docs-launch/</link>
        <pubDate>Sat, 08 Aug 2026 00:00:00 +0000</pubDate>
        
        <guid>https://sow.pgsty.com/zh/blog/release/sow-docs-launch/</guid>
        <description>&lt;p&gt;SOW 0.2.0 是 &lt;a href=&#34;https://pigsty.cc&#34;&gt;Pigsty&lt;/a&gt; 出品的自包含 RPM/DEB 仓库管理器，Release&#xA;资产以单个 Go 可执行文件覆盖 Linux 与 macOS 构建目标。&lt;/p&gt;&#xA;&lt;h2 id=&#34;两种工作模式&#34;&gt;两种工作模式&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;strong&gt;Plain 模式&lt;/strong&gt; 给目录顶层已有的 RPM 与 DEB 文件就地生成索引：&lt;/p&gt;</description>
      </item>
    <item>
        <title>设计归档</title>
        <link>https://sow.pgsty.com/zh/blog/design/</link>
        <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
        
        <guid>https://sow.pgsty.com/zh/blog/design/</guid>
        <description>&lt;p&gt;设计归档解释 SOW 为什么采纳某项契约、否决了哪些替代方案，以及结论实际达到了哪一层证据。&#xA;文章按 &lt;code&gt;date&lt;/code&gt; 排列，记录设计理由首次形成可维护正文的日期；&lt;code&gt;lastmod&lt;/code&gt; 记录后续编辑或与&#xA;实现对齐的日期。功能实际在哪个版本交付，仍以发布注记与源码 Tag 为准。&lt;/p&gt;</description>
      </item>
    <item>
        <title>发布与恢复</title>
        <link>https://sow.pgsty.com/zh/blog/design/publication/</link>
        <pubDate>Sat, 08 Aug 2026 00:00:00 +0000</pubDate>
        
        <guid>https://sow.pgsty.com/zh/blog/design/publication/</guid>
        <description>&lt;p&gt;构建与发布是两个独立状态迁移。构建产生与 target 无关的 Generation；发布把该 Generation&#xA;应用到一个供应商前缀，并记录足以在不猜测的前提下恢复的证据。&lt;/p&gt;&#xA;&lt;h2 id=&#34;所有权拆分&#34;&gt;所有权拆分&#xA;&lt;/h2&gt;&#xA;&lt;div class=&#34;td-table-scroll td-table-scroll--static&#34;&gt;&#xA;&lt;table&gt;&#xA;  &lt;thead&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;th scope=&#34;col&#34;&gt;Repository 作用域&lt;/th&gt;&#xA;      &lt;th scope=&#34;col&#34;&gt;Target prefix 作用域&lt;/th&gt;&#xA;    &lt;/tr&gt;&#xA;  &lt;/thead&gt;&#xA;  &lt;tbody&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;Package Object&lt;/td&gt;&#xA;      &lt;td&gt;Publication Attempt&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;Desired 与 Built 状态&lt;/td&gt;&#xA;      &lt;td&gt;Applied Checkpoint&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;Generation 与 Changeset&lt;/td&gt;&#xA;      &lt;td&gt;远端 inventory&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;retained 包体/元数据引用&lt;/td&gt;&#xA;      &lt;td&gt;grace 与删除证据&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;  &lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&#xA;&lt;p&gt;这项拆分避免把 filesystem 发布成功当成 R2 的证据，也避免一个 target 的半完成尝试污染另一个。&lt;/p&gt;</description>
      </item>
    <item>
        <title>教程</title>
        <link>https://sow.pgsty.com/zh/docs/tutorial/</link>
        <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
        
        <guid>https://sow.pgsty.com/zh/docs/tutorial/</guid>
        <description>&lt;p&gt;这里的教程都从全新工作区开始。请按顺序执行命令，并按你的环境替换大写占位符与包路径。&lt;/p&gt;&#xA;&lt;p&gt;如果还没装 SOW，先看&lt;a href=&#34;https://sow.pgsty.com/zh/docs/start/install/&#34;&gt;安装&lt;/a&gt;与&lt;a href=&#34;https://sow.pgsty.com/zh/docs/start/quickstart/&#34;&gt;快速上手&lt;/a&gt;。&#xA;下面的教程介绍 Managed 仓库路径。&lt;/p&gt;&#xA;&lt;div class=&#34;td-content-cards td-content-cards--auto&#34; id=&#34;td-cards-260b68e7-0&#34;&gt;&#xA;&#xA;&lt;article id=&#34;td-card-260b68e7-cards-0-0&#34; class=&#34;td-content-card&#34;&gt;&#xA;&lt;div class=&#34;td-content-card__body&#34;&gt;&#xA;&lt;div class=&#34;td-content-card__head&#34;&gt;&lt;a class=&#34;td-content-card__title&#34; href=&#34;https://sow.pgsty.com/zh/docs/tutorial/yum-repo/&#34;&gt;搭建 YUM 仓库&lt;/a&gt;&lt;/div&gt;&#xA;&lt;div class=&#34;td-content-card__description&#34;&gt;&lt;p&gt;托管 RPM 仓库：分架构视图、noarch 中性投影、debuginfo 过滤、版本数量上限，以及可用的&#xA;dnf 客户端配置。&lt;/p&gt;</description>
      </item>
    <item>
        <title>服务与发布仓库</title>
        <link>https://sow.pgsty.com/zh/docs/tutorial/serving/</link>
        <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
        
        <guid>https://sow.pgsty.com/zh/docs/tutorial/serving/</guid>
        <description>&lt;p&gt;SOW 只生成静态文件，不是 HTTP 服务器。本指南把可写 Workspace 与 Nginx 服务路径分开。&lt;/p&gt;&#xA;&lt;h2 id=&#34;公共与私有路径&#34;&gt;公共与私有路径&#xA;&lt;/h2&gt;&#xA;&lt;div class=&#34;td-table-scroll td-table-scroll--static&#34;&gt;&#xA;&lt;table&gt;&#xA;  &lt;thead&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;th scope=&#34;col&#34;&gt;模式&lt;/th&gt;&#xA;      &lt;th scope=&#34;col&#34;&gt;公共单元&lt;/th&gt;&#xA;      &lt;th scope=&#34;col&#34;&gt;绝不能服务&lt;/th&gt;&#xA;    &lt;/tr&gt;&#xA;  &lt;/thead&gt;&#xA;  &lt;tbody&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;Plain&lt;/td&gt;&#xA;      &lt;td&gt;传给 &lt;code&gt;sow create&lt;/code&gt; 的目录&lt;/td&gt;&#xA;      &lt;td&gt;临时 &lt;code&gt;.sow-plain-stage-*&lt;/code&gt; 输出；没有持久 journal&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;Managed&lt;/td&gt;&#xA;      &lt;td&gt;一个 Repository 的完整 &lt;code&gt;pool/ + dists/&lt;/code&gt; 树&lt;/td&gt;&#xA;      &lt;td&gt;Workspace &lt;code&gt;sow.yml&lt;/code&gt;、&lt;code&gt;.sow/&lt;/code&gt;、SQLite、锁、日志与 staging&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;  &lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&#xA;&lt;p&gt;&lt;a href=&#34;https://sow.pgsty.com/zh/docs/start/workspace/&#34;&gt;第一个工作区&lt;/a&gt;里的源 Repository 是 &lt;code&gt;/srv/sow/local&lt;/code&gt;。不要把&#xA;&lt;code&gt;/srv/sow&lt;/code&gt; 设为 document root。&lt;/p&gt;</description>
      </item>
    <item>
        <title>演练构建 pigsty-infra 仓库</title>
        <link>https://sow.pgsty.com/zh/docs/tutorial/infra-repo/</link>
        <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
        
        <guid>https://sow.pgsty.com/zh/docs/tutorial/infra-repo/</guid>
        <description>&lt;p&gt;&lt;a href=&#34;https://github.com/pgsty/infra-pkg&#34;&gt;&lt;code&gt;pgsty/infra-pkg&lt;/code&gt;&lt;/a&gt; 是 Pigsty Infra 软件包的上游构建源码。&#xA;本教程假设双架构 RPM 与 DEB 已经构建完成，只处理后半程：从一堆包开始，用 SOW 建成真正可消费、可维护的 &lt;code&gt;infra&lt;/code&gt; 仓库。&lt;/p&gt;&#xA;&lt;h2 id=&#34;1-把包集中到-repo&#34;&gt;1. 把包集中到 ~/repo&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;本教程固定使用 &lt;code&gt;~/repo&lt;/code&gt;，不再为每条路径定义环境变量。先把已有包复制进两个输入目录：&lt;/p&gt;</description>
      </item>
    <item>
        <title>sow changes</title>
        <link>https://sow.pgsty.com/zh/docs/command/changes/</link>
        <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
        
        <guid>https://sow.pgsty.com/zh/docs/command/changes/</guid>
        <description>&lt;p&gt;&lt;code&gt;sow changes&lt;/code&gt; 比较 Built Generation，输出物理的 Repository 相对文件差异。它不显示尚未构建的&#xA;Desired 变化，也不是远端事务协议。&lt;/p&gt;&#xA;&lt;h2 id=&#34;语法&#34;&gt;语法&#xA;&lt;/h2&gt;&#xA;&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-9d40bb37-fence-0&#34; data-td-code data-td-code-auto-id&#xA;     data-td-language=&#34;text&#34; data-td-line-count=&#34;1&#34;&gt;&#xA;  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-9d40bb37-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sow changes [BASE_GENERATION] [-C|--workdir DIR] [-r|--repo NAME] [--json]&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;div class=&#34;td-table-scroll td-table-scroll--static&#34;&gt;&#xA;&lt;table&gt;&#xA;  &lt;thead&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;th scope=&#34;col&#34;&gt;参数&lt;/th&gt;&#xA;      &lt;th scope=&#34;col&#34;&gt;含义&lt;/th&gt;&#xA;      &lt;th scope=&#34;col&#34;&gt;默认值&lt;/th&gt;&#xA;    &lt;/tr&gt;&#xA;  &lt;/thead&gt;&#xA;  &lt;tbody&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;&lt;code&gt;-C, --workdir DIR&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;td&gt;工作区发现起点&lt;/td&gt;&#xA;      &lt;td&gt;当前目录&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;&lt;code&gt;-r, --repo NAME&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;td&gt;选择 Repository&lt;/td&gt;&#xA;      &lt;td&gt;&lt;a href=&#34;https://sow.pgsty.com/zh/docs/command/&#34;&gt;选择规则&lt;/a&gt;&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;&lt;code&gt;--json&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;td&gt;输出 &lt;code&gt;sow.cli/v1&lt;/code&gt; Envelope&lt;/td&gt;&#xA;      &lt;td&gt;false&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;  &lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&#xA;&lt;p&gt;该命令作用于整个 Repository，明确拒绝 &lt;code&gt;-d/--dist&lt;/code&gt;。&lt;/p&gt;</description>
      </item>
    <item>
        <title>sow publish</title>
        <link>https://sow.pgsty.com/zh/docs/command/publish/</link>
        <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
        
        <guid>https://sow.pgsty.com/zh/docs/command/publish/</guid>
        <description>&lt;p&gt;&lt;code&gt;sow publish&lt;/code&gt; 将某个 Repository 的当前 Built Generation 交付到 &lt;code&gt;sow.yml&lt;/code&gt; 的 &lt;code&gt;targets:&lt;/code&gt; 中指定的&#xA;目标。目标已经绑定 Repository 与 Provider，因此命令不接受 &lt;code&gt;--repo&lt;/code&gt; 或 &lt;code&gt;--dist&lt;/code&gt;。&lt;/p&gt;&#xA;&lt;h2 id=&#34;语法&#34;&gt;语法&#xA;&lt;/h2&gt;&#xA;&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-bd7a1741-fence-0&#34; data-td-code data-td-code-auto-id&#xA;     data-td-language=&#34;text&#34; data-td-line-count=&#34;1&#34;&gt;&#xA;  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-bd7a1741-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sow publish TARGET [--abort | --rebind] [-C|--workdir DIR] [-T|--timeout DUR | -N|--no-wait] [--json]&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;div class=&#34;td-table-scroll td-table-scroll--static&#34;&gt;&#xA;&lt;table&gt;&#xA;  &lt;thead&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;th scope=&#34;col&#34;&gt;参数&lt;/th&gt;&#xA;      &lt;th scope=&#34;col&#34;&gt;含义&lt;/th&gt;&#xA;      &lt;th scope=&#34;col&#34;&gt;默认值&lt;/th&gt;&#xA;    &lt;/tr&gt;&#xA;  &lt;/thead&gt;&#xA;  &lt;tbody&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;&lt;code&gt;--abort&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;td&gt;放弃已对账、但尚未写入持久 commit intent 的尝试&lt;/td&gt;&#xA;      &lt;td&gt;false&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;&lt;code&gt;--rebind&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;td&gt;确认并记录允许修改的目标名称、公共端点或缓存 TTL&lt;/td&gt;&#xA;      &lt;td&gt;false&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;&lt;code&gt;-C, --workdir DIR&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;td&gt;工作区发现起点&lt;/td&gt;&#xA;      &lt;td&gt;当前目录&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;&lt;code&gt;-T, --timeout DUR&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;td&gt;最长 Repository 等锁时间；&lt;code&gt;0&lt;/code&gt; 表示无限等待&lt;/td&gt;&#xA;      &lt;td&gt;&lt;code&gt;0&lt;/code&gt;&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;&lt;code&gt;-N, --no-wait&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;td&gt;锁被占用时立即失败&lt;/td&gt;&#xA;      &lt;td&gt;false&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;&lt;code&gt;--json&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;td&gt;输出 &lt;code&gt;sow.cli/v1&lt;/code&gt; Envelope&lt;/td&gt;&#xA;      &lt;td&gt;false&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;  &lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&#xA;&lt;p&gt;&lt;code&gt;TARGET&lt;/code&gt; 必须是已配置的 &lt;code&gt;filesystem&lt;/code&gt; 或 &lt;code&gt;r2&lt;/code&gt; 发布目标。&lt;code&gt;--abort&lt;/code&gt; 与 &lt;code&gt;--rebind&lt;/code&gt; 互斥。&lt;/p&gt;</description>
      </item>
    <item>
        <title>sow gc</title>
        <link>https://sow.pgsty.com/zh/docs/command/gc/</link>
        <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
        
        <guid>https://sow.pgsty.com/zh/docs/command/gc/</guid>
        <description>&lt;p&gt;&lt;code&gt;sow gc&lt;/code&gt; 有两种严格分离的模式：不带位置目标时，回收本地不可达包体；带 &lt;code&gt;TARGET&lt;/code&gt; 时，维护一个&#xA;已配置发布目标。&lt;/p&gt;&#xA;&lt;h2 id=&#34;语法&#34;&gt;语法&#xA;&lt;/h2&gt;&#xA;&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-4eef944d-fence-0&#34; data-td-code data-td-code-auto-id&#xA;     data-td-language=&#34;text&#34; data-td-line-count=&#34;2&#34;&gt;&#xA;  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-4eef944d-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sow gc          [-C|--workdir DIR] [-r|--repo NAME] [-T|--timeout DUR | -N|--no-wait] [--json]&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sow gc TARGET   [-C|--workdir DIR]                  [-T|--timeout DUR | -N|--no-wait] [--json]&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;div class=&#34;td-table-scroll td-table-scroll--static&#34;&gt;&#xA;&lt;table&gt;&#xA;  &lt;thead&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;th scope=&#34;col&#34;&gt;参数&lt;/th&gt;&#xA;      &lt;th scope=&#34;col&#34;&gt;含义&lt;/th&gt;&#xA;      &lt;th scope=&#34;col&#34;&gt;默认值&lt;/th&gt;&#xA;    &lt;/tr&gt;&#xA;  &lt;/thead&gt;&#xA;  &lt;tbody&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;&lt;code&gt;-C, --workdir DIR&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;td&gt;工作区发现起点&lt;/td&gt;&#xA;      &lt;td&gt;当前目录&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;&lt;code&gt;-r, --repo NAME&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;td&gt;仅用于选择本地 GC 的 Repository&lt;/td&gt;&#xA;      &lt;td&gt;选择规则&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;&lt;code&gt;-T, --timeout DUR&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;td&gt;最长 Repository 等锁时间；&lt;code&gt;0&lt;/code&gt; 表示无限等待&lt;/td&gt;&#xA;      &lt;td&gt;&lt;code&gt;0&lt;/code&gt;&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;&lt;code&gt;-N, --no-wait&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;td&gt;锁被占用时立即失败&lt;/td&gt;&#xA;      &lt;td&gt;false&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;&lt;code&gt;--json&lt;/code&gt;&lt;/td&gt;&#xA;      &lt;td&gt;输出 &lt;code&gt;sow.cli/v1&lt;/code&gt; Envelope&lt;/td&gt;&#xA;      &lt;td&gt;false&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;  &lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&#xA;&lt;p&gt;目标自身已绑定 Repository，因此 &lt;code&gt;gc TARGET -r NAME&lt;/code&gt; 属于用法错误。两种模式都不接受 &lt;code&gt;--dist&lt;/code&gt;。&lt;/p&gt;</description>
      </item>
    
  </channel>
</rss>
