This file is indexed.

/usr/share/doc/maint-guide-zh-cn/html/upload.zh-cn.html is in maint-guide-zh-cn 1.2.40.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <title>第 9 章 上传软件包</title>
    <link rel="stylesheet" type="text/css" href="debian.css"/>
    <meta name="generator" content="DocBook XSL Stylesheets V1.79.1"/>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
    <link rel="home" href="index.zh-cn.html" title="Debian 新维护者手册"/>
    <link rel="up" href="index.zh-cn.html" title="Debian 新维护者手册"/>
    <link rel="prev" href="update.zh-cn.html" title="第 8 章 更新软件包"/>
    <link rel="next" href="advanced.zh-cn.html" title="附录 A. 高级打包"/>
  </head>
  <body>
    <div class="navheader">
      <table width="100%" summary="Navigation header">
        <tr>
          <th colspan="3" align="center">第 9 章 上传软件包</th>
        </tr>
        <tr>
          <td align="left"><a accesskey="p" href="update.zh-cn.html"><img src="images/prev.png" alt="上一页"/></a> </td>
          <th width="60%" align="center"> </th>
          <td align="right"> <a accesskey="n" href="advanced.zh-cn.html"><img src="images/next.png" alt="下一页"/></a></td>
        </tr>
      </table>
      <hr/>
    </div>
    <div class="chapter">
      <div class="titlepage">
        <div>
          <div>
            <h1 class="title"><a id="upload"/>第 9 章 上传软件包</h1>
          </div>
        </div>
      </div>
      <div class="toc">
        <p>
          <strong>目录</strong>
        </p>
        <dl class="toc">
          <dt>
            <span class="section">
              <a href="upload.zh-cn.html#upload-debian">9.1. 上传到 Debian 仓库</a>
            </span>
          </dt>
          <dt>
            <span class="section">
              <a href="upload.zh-cn.html#option-sa">9.2. 在上传时包含 <code class="filename">orig.tar.gz</code> 文件</a>
            </span>
          </dt>
          <dt>
            <span class="section">
              <a href="upload.zh-cn.html#skipped-uploads">9.3. 跳过的上传</a>
            </span>
          </dt>
        </dl>
      </div>
      <p>
现在你完成了对软件包的彻底测试,接下来将其释出到公共归档中分享它吧。
</p>
      <div class="section">
        <div class="titlepage">
          <div>
            <div>
              <h2 class="title"><a id="upload-debian"/>9.1. 上传到 Debian 仓库</h2>
            </div>
          </div>
        </div>
        <p>
当你成为正式的开发人员<a href="#ftn.idm3712" class="footnote" id="idm3712"><sup class="footnote">[83]</sup></a>,你可以把软件包上传到 Debian
仓库<a href="#ftn.idm3715" class="footnote" id="idm3715"><sup class="footnote">[84]</sup></a>。你可以手工进行这项工作,但使用例如 <span class="citerefentry"><span class="refentrytitle">dupload</span>(1)</span><span class="citerefentry"><span class="refentrytitle">dput</span>(1)</span> 的自动化工具可以帮你更好地完成这项操作。在此我们将叙述如何使用
<span class="command"><strong>dupload</strong></span> 操作。<a href="#ftn.idm3726" class="footnote" id="idm3726"><sup class="footnote">[85]</sup></a>
</p>
        <p>
首先需要设置 <span class="command"><strong>dupload</strong></span> 的配置文件。你既可以编辑系统级的
<code class="filename">/etc/dupload.conf</code> 文件,也可以使用自己的
<code class="filename">~/.dupload.conf</code> 文件凌驾一些需要修改的设置。
</p>
        <p>
你可以阅读 <span class="citerefentry"><span class="refentrytitle">dupload.conf</span>(5)</span> man 手册页来了解各选项的含义。
</p>
        <p>
<code class="literal">$default_host</code>
选项决定了默认使用哪个上传队列,<code class="literal">anonymous-ftp-master</code>
是最基本的一个,但你很可能希望改用其他的。<a href="#ftn.idm3743" class="footnote" id="idm3743"><sup class="footnote">[86]</sup></a>
</p>
        <p>
连接到互联网后,可以使用以下命令上传你的软件包:
</p>
        <pre class="screen">
$ dupload gentoo_0.9.12-1_i386.changes
</pre>
        <p>
<span class="command"><strong>dupload</strong></span> 会检查文件的 SHA1/SHA256 校验和是否与
<code class="filename">.changes</code> 文件中的相匹配,如果不匹配它会做出警告。你应按照如 <a class="xref" href="build.zh-cn.html#completebuild" title="6.1. 完整的(重)构建">第 6.1 节 “完整的(重)构建”</a> 所述来重构建软件包使得它可以被正常上传。
</p>
        <p>
如果你在 <a class="ulink" href="ftp://ftp.upload.debian.org/pub/UploadQueue/">ftp://ftp.upload.debian.org/pub/UploadQueue/</a> 遇到了上传问题,你可以通过 <span class="command"><strong>ftp</strong></span> 来手动上传
GPG 签署的 <code class="filename">*.commands</code> 文件。  <a href="#ftn.idm3756" class="footnote" id="idm3756"><sup class="footnote">[87]</sup></a> 比如说,使用 <code class="filename">hello.commands</code> 命令:
</p>
        <pre class="screen">
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Uploader: Foo Bar &lt;Foo.Bar@example.org&gt;
Commands: 
 rm hello_1.0-1_i386.deb
 mv hello_1.0-1.dsx hello_1.0-1.dsc
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)

[...]
-----END PGP SIGNATURE-----
</pre>
      </div>
      <div class="section">
        <div class="titlepage">
          <div>
            <div>
              <h2 class="title"><a id="option-sa"/>9.2. 在上传时包含 <code class="filename">orig.tar.gz</code> 文件</h2>
            </div>
          </div>
        </div>
        <p>
第一次向仓库上传软件包时要包含 <code class="filename">orig.tar.gz</code> 源代码归档。如果这个软件包的修订号既不是
<code class="literal">1</code> 也不是 <code class="literal">0</code>, 那你就必须给
<span class="command"><strong>dpkg-buildpackage</strong></span> 加上选项 <code class="literal">-sa</code></p>
        <p>
对于 <span class="command"><strong>dpkg-buildpackage</strong></span> 命令:
</p>
        <pre class="screen">
$ dpkg-buildpackage -sa
</pre>
        <p>
对于 <span class="command"><strong>debuild</strong></span> 命令:
</p>
        <pre class="screen">
$ debuild -sa
</pre>
        <p>
对于 <span class="command"><strong>pdebuild</strong></span> 命令:
</p>
        <pre class="screen">
$ pdebuild --debbuildopts -sa
</pre>
        <p>
另一方面,请注意 <code class="literal">-sd</code> 选项会强制 排除原始的 <code class="filename">orig.tar.gz</code>
源代码。
</p>
      </div>
      <div class="section">
        <div class="titlepage">
          <div>
            <div>
              <h2 class="title"><a id="skipped-uploads"/>9.3. 跳过的上传</h2>
            </div>
          </div>
        </div>
        <p>
如果你在 <code class="filename">debian/changelog</code> 创建了多个条目并跳过了上传,你必须创建一个相应的
<code class="filename">*_.changes</code> 文件,其中包含自上次上传以来的全部变更记录。这可以通过指定
<span class="command"><strong>dpkg-buildpackage</strong></span><code class="literal">-v</code> 并将版本传递给它来完成。比如,
<code class="literal"><em class="replaceable"><code>1.2</code></em></code>.
</p>
        <p>
对于 <span class="command"><strong>dpkg-buildpackage</strong></span> 命令:
</p>
        <pre class="screen">
$ dpkg-buildpackage -v<em class="replaceable"><code>1.2</code></em>
</pre>
        <p>
对于 <span class="command"><strong>debuild</strong></span> 命令:
</p>
        <pre class="screen">
$ debuild -v<em class="replaceable"><code>1.2</code></em>
</pre>
        <p>
对于 <span class="command"><strong>pdebuild</strong></span> 命令:
</p>
        <pre class="screen">
$ pdebuild --debbuildopts "-v<em class="replaceable"><code>1.2</code></em>"
</pre>
      </div>
      <div class="footnotes">
        <br/>
        <hr/>
        <div id="ftn.idm3712" class="footnote">
          <p><a href="#idm3712" class="para"><sup class="para">[83] </sup></a>
参见 <a class="xref" href="start.zh-cn.html#socialdynamics" title="1.1. Debian 的社会驱动力">第 1.1 节 “Debian 的社会驱动力”</a></p>
        </div>
        <div id="ftn.idm3715" class="footnote">
          <p><a href="#idm3715" class="para"><sup class="para">[84] </sup></a>
有许多公开的档案比如 <a class="ulink" href="http://mentors.debian.net/">http://mentors.debian.net/</a> ,它们的运作方式几乎与 Debian
档案一致,并提供了一个非开发者的上传区域。你可以自己建立一个等效档案,只要使用 <a class="ulink" href="http://wiki.debian.org/HowToSetupADebianRepository">http://wiki.debian.org/HowToSetupADebianRepository</a>
里边列举出来的工具。  所以这一小节也对非开发者特别有用。
</p>
        </div>
        <div id="ftn.idm3726" class="footnote">
          <p><a href="#idm3726" class="para"><sup class="para">[85] </sup></a>
<code class="systemitem">dput</code> 软件包提供了更多的特性,相比于 <code class="systemitem">dupload</code> 也越来越受欢迎。它使用
<code class="filename">/etc/dput</code> 文件作为全局配置文件、<code class="filename">~/.dput.cf</code>
作为用户配置文件。它也直接支持 ubuntu 相关的服务。  </p>
        </div>
        <div id="ftn.idm3743" class="footnote">
          <p><a href="#idm3743" class="para"><sup class="para">[86] </sup></a>参见 <a class="ulink" href="http://www.debian.org/doc/manuals/developers-reference/pkgs.html#upload">Debian Developer's Reference 5.6. "Uploading
a package"</a>.</p>
        </div>
        <div id="ftn.idm3756" class="footnote">
          <p><a href="#idm3756" class="para"><sup class="para">[87] </sup></a> 参见 <a class="ulink" href="ftp://ftp.upload.debian.org/pub/UploadQueue/README">ftp://ftp.upload.debian.org/pub/UploadQueue/README</a>。 或者是, 你可以使用 <span class="command"><strong>dcut</strong></span>
命令,它来自 <code class="systemitem">dput</code> 软件包。  </p>
        </div>
      </div>
    </div>
    <div class="navfooter">
      <hr/>
      <table width="100%" summary="Navigation footer">
        <tr>
          <td align="left"><a accesskey="p" href="update.zh-cn.html"><img src="images/prev.png" alt="上一页"/></a> </td>
          <td align="center"> </td>
          <td align="right"> <a accesskey="n" href="advanced.zh-cn.html"><img src="images/next.png" alt="下一页"/></a></td>
        </tr>
        <tr>
          <td align="left" valign="top">第 8 章 更新软件包 </td>
          <td align="center">
            <a accesskey="h" href="index.zh-cn.html">
              <img src="images/home.png" alt="起始页"/>
            </a>
          </td>
          <td align="right" valign="top"> 附录 A. 高级打包</td>
        </tr>
      </table>
    </div>
  </body>
</html>