在 wiki 风格的网站上,我可以做些什么来防止或减轻写-写冲突,同时仍然允许网站快速运行并保持网站易于使用?
我预见的问题是这样的:
- 用户 A 开始编辑文件
- 用户 B 开始编辑文件
- 用户 A 完成文件编辑
- 用户 B 完成文件编辑,不小心覆盖了用户 A 的所有编辑
以下是我想出的一些方法:
- 有某种签出/签入/锁定系统(尽管我不知道如何防止人们将文件签出“太长时间”,而且我不希望用户因不被允许而感到沮丧进行编辑)
- 有某种差异系统,显示用户提交更改并允许某种合并时所做的其他更改(但我担心这将难以创建并且会使网站“太难”使用)
- 在用户进行更改时通知用户并发编辑(某种 AJAX?)
还有其他方法可以解决这个问题吗?有没有很好地实现这一点的网站示例?