- subversion 初始化
-
trunk
-
branches
-
releases
-
tags
svn co svn://127.0.0.1/document cd project mkdir trunk mkdir tags mkdir branches mkdir releases svn ci -m "Initialized empty subversion repository in your_project"
-
创建docbook文档,安排章节
将章节拆分成独立文件,并在主文档头部声明
<!ENTITY chapter.system SYSTEM "chapter.system.xml"> <!ENTITY chapter.system.harddisk SYSTEM "chapter.system.harddisk.xml"> <!ENTITY chapter.network SYSTEM "chapter.network.xml">
完成后导入subversion的trunk中
-
创建版本分支
$ svn copy svn://netkiller.8800.org/document/trunk svn://netkiller.8800.org/document/branches/system $ svn copy svn://netkiller.8800.org/document/trunk svn://netkiller.8800.org/document/branches/network
- 开始写作
- 我们假设jam负责system章节
-
- checkout
$ svn checkout svn://netkiller.8800.org/document/branches/system
-
编辑文件
vim chapter.system.xml
-
校验XML
$ export DSSSL=/usr/share/xml/docbook/stylesheet/nwalsh/xhtml/chunk.xsl $ xsltproc --stringparam html.stylesheet docbook.css ${DSSSL} book.xml
-
提交文件
$ svn ci -m "I have finished this chapter."
- 其他编辑人员操作类似checkout自己branche上的network章节等等
-
tags运作
当jam完成了指派的任务的第一个阶段后,可以创建一个tags
svn copy svn://netkiller.8800.org/document/branches/system svn://netkiller.8800.org/document/tags/system_phase_I
tags 一旦建立,以后不会在更改
然后jam可以在/document/branches/system继续写作
-
合并tags到主干
当tags完成后主编将其合并到trunk
svn merge svn://netkiller.8800.org/document/tags/system_phase_I
然后发行unstable版本,你也可以每天产生一个快照。等待用户反馈。
反馈结果由负责人在/document/branches/system上修改,等待下一次发布在下一个阶段。
-
发行文档
当一切OK时,我就可以把trunk 复制到 releases 中,随你怎命名。
$ svn copy svn://netkiller.8800.org/document/trunk svn://netkiller.8800.org/document/release/document_v1.0
这个版本/document/release/document_v1.0就可以提供给读者了。
原文出处:Netkiller 系列 手札
本文作者:陈景峯
转载请与作者联系,同时请务必标明文章原始出处和作者信息及本声明。