LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
楼主: EricNeon

关于组建ubuntu Chinese Team的讨论

[复制链接]
发表于 2005-5-9 01:42:23 | 显示全部楼层
打补丁哪有容易的,但也没想象的困难,版本总要升级的。
回复 支持 反对

使用道具 举报

发表于 2005-5-9 02:09:12 | 显示全部楼层
diff.gz 的只是 debian 化补丁
回复 支持 反对

使用道具 举报

发表于 2005-5-9 02:41:15 | 显示全部楼层
SRPM格式的补丁,通常是把各个功能的补丁拆开的,而且每个补丁从名字上就可以看出补丁的功能,比如kdebase-3.3.2-fix-kicker-kde-bug-96768.patch。

而DPKG只能通过写Debian/ChangeLog的形式予以记录,倘若bugzilla上没有给出与此bug对应的patch,那么你就无从得知这个bug究竟是在diff.gz的哪个部分给修正了。相应的,你如果要在某一版本的DPKG的基础上做一个新的包,那么你一定也要写自己的patch,那么你就必须把现有的patch全部吃透,再写新的diff.gz。
回复 支持 反对

使用道具 举报

发表于 2005-5-9 02:58:39 | 显示全部楼层
代 minghua 回复 fundawang:
Debian 的 .diff.gz 格式是最基本的 patch 格式,已经用了十年了,必须要保持和以前兼容. 如果有许多 patch,要一一说明的话有另外的工具管理,最强大的可能是 dbs,后来有 cdbs, dpatch 等更简单易用的系统。我用 dpatch,不但每个 patch 可以分开,分别说明内容,还可以规定 patch apply 的顺序(这样一个 patch 可以依赖于另一个)以及规定某些 patch 只用于特定的 architecture。
    总之,.diff.gz 的格式是便于管理,不用每次更新都把原有的 source 重新上传一遍,并不是说让每个人都直接读 .diff.gz 的格式。每个 maintainer 可以根据自己 package 的复杂程度选择合适的 patch 管理系统,并不是象 fundawang 说的那样一刀切的情况。
回复 支持 反对

使用道具 举报

发表于 2005-5-9 03:21:52 | 显示全部楼层
嗯,Debian软件包的维护情况我还是了解一点的。我原来就猜想debian必定为维护者提供了patch的管理工具。

我实际的意思是说,对于外界来说,diff.gz仍显不够开放。从某种意义上来说,一个软件包的维护者创造了一个黑盒,对内是一大堆井井有条的patch,对外是一个不具有可读性的diff.gz。这种方式我不好说好还是不好,可能Debian有自己的考虑,但总归还是不够开放。

呵呵,觉得有点跑题了...
回复 支持 反对

使用道具 举报

发表于 2005-5-9 08:06:43 | 显示全部楼层
还有这种工具啊……应该也能用在 fedora 这些发行版里面吧?
回复 支持 反对

使用道具 举报

发表于 2005-5-9 08:31:07 | 显示全部楼层
Post by fundawang
刚刚仔细研究了一下DPKG的结构,这种文件结构决定了要参与Debian甚或Ubuntu的开发实在不是一件很容易的事。它把对软件包所有的补丁全体写在diff.gz一个文件中,而这个文件既没有说明,也不会对补丁的不同功能做说明,DSC也基本不会介绍这个diff.gz有什么具体的内容。等于说,你如果要在原来包的基础上再提供补丁,就必须要把原来的补丁全体吃透,这对于一般的开发者来说是不容易的。

呃,其实呢,如果你用 apt-get source 来修改源代码的话,再用 dpkg-buildpackage 打包的话,dpkg 自己还是能很好地处理这些补丁的。
回复 支持 反对

使用道具 举报

发表于 2008-8-4 11:33:26 | 显示全部楼层
呀,路过,终于了解 forum.ubuntu.org.cn 的由来了
回复 支持 反对

使用道具 举报

发表于 2009-6-21 12:22:34 | 显示全部楼层
同楼上....
过来考古的:-)
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表