在这里,我们走下主观的小巷..
最近,我在我的一些存储库中添加了一个名为"whiteboard.txt"的文件.我使用Mercurial,但这适用于任何DVCS.
文本文件的目的是散列格式,流程,想法等.鉴于大多数分布式版本控制系统都有某种Web界面,为什么不将一个目录表示为"wiki"并允许它被查看和使用使用像Wiki Creole标记这样的东西?
显然,只有那些具有提交权限的人才能进行更改.
我的观点是,当代码准备发布时,设计维基和相当多的文档将会完成.为什么不将两个最重要的协作工具集成到一个?
例如,如果我能:
hg --wiki并找到一组30个补丁背后的推理以及它们在提交日志中超出缩写注释的预期方向..哇:)任何提交都可以引用一个wiki条目,而且讨论成为存储库的一部分而不是二级网站.
如果你喜欢使用DVCS,因为你可以离线工作,为什么这没有意义呢?
编辑:
这一点的重点是,如果'joe'提交文件,他应该能够设置一个'nag'属性,提示其他人更改文件以更新某个wiki页面,所有这些都在离线时完成,未来的合并已经解决在幕后.毕竟,它是文本,而不是代码,可以被视为FIFO.
如果你可以离线提交,你也可以更新一个wiki离线并在以后推送你的更改,即使是补丁格式.
这个想法看似简单.
有一个名为Fossil的项目就是这样做的.我没有亲自使用它,但它是由编写SQLite的同一个人制作的,所以我的猜测是它小而快.事实上,根据网站,一切都存储在一个小的SQLite数据库中,因此它应该易于存档和传输.
也许http://ikiwiki.info/
一个维基编译器.您可以指示它将wiki源(降价文本文件)存储在存储库中(例如git,mercurial,subversion).编辑可以通过网络或工作副本完成.