/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 <Foo.Bar@example.org>
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>
|