知乎專欄 | 多維度架構 | | | 微信號 netkiller-ebook | | | QQ群:128659835 請註明“讀者” |
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就可以提供給讀者了。