wiki 如何处理多个同时编辑?

2024-03-29

这件事一直萦绕在我的脑海里,所以我想我还是去问问吧。

wiki 如何处理对同一内容的多次编辑?

这是我所要求的一个简单的例子。假设一个页面包含以下内容:

我是一页!

现在假设有两个人去编辑该页面。每人加一句话:

第一个人:

我是一页!
我是同一页的第二句话!

第二个人:

我是一页!
我是第二句话!

想象每个人的第二句话是关于每个人想要添加的页面主题的同样相关但不同的事实。

现在,假设第一个人在第二个人之前提交更改,但第二个人甚至没有机会看到第一个人所做的更改。当第二个人最终提交时,他的更改会覆盖第一个人的更改吗?

是否有可用于此目的的差异/合并算法?


我相信维基百科使用一个相当简单的差异/合并 http://meta.wikimedia.org/wiki/Help:Edit_conflict算法,类似于大多数源代码控制软件的做法。

在您给出的示例中,它会引发合并冲突错误,因为它无法知道最终标记中哪一行应该排在第一位。第二个保存更改的人将看到一个合并错误页面,他们必须在其中选择如何解决冲突。

但请记住,维基百科处于并发用户规模的高端。对于大多数 wiki,使用非常简单的“最后保存获胜”算法可能是可以接受的,其中第二个人的编辑简单地覆盖第一个人的编辑。添加历史记录后,第一个人应该很容易发现他们的更改已被覆盖并再次将其添加回来。

我相信 Stack Overflow 使用的就是这个解决方案。 SO 有一个附加功能,如果其他人进来并在完成之前修改页面,则使用 Ajax 调用来通知编辑器。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

wiki 如何处理多个同时编辑? 的相关文章

  • 合并具有索引的数据帧,其中一个数据帧包含另一个数据帧(但不相同)

    例如 df1 具有形状 533 2176 指数如Elkford 5901003 DM 01010 df2 具有形状 743 12 指数如5901003 df1 索引括号中的数字将与 df2 的索引匹配 正如形状所示 一些索引根本不匹配 现在
  • 如何使用python比较两个html文件

    我想使用 python 来比较两个 html 文件 例子 html 1 p i love it p html 2 h2 i love it diff 文件将如下所示 diff html h2
  • 可以集成到 C# 应用程序中的 Diff 工具 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 按时间合并 pandas 数据框和另一列

    我有两个熊猫数据框 我正在尝试将它们组合成一个数据框 我是这样设置它们的 a date 1 1 2015 00 00 1 1 2015 00 15 1 1 2015 00 30 num 1 2 3 b date 1 1 2015 01 15
  • 通过“递归”策略进行合并

    我知道 git merge 递归实际上发生在有超过 1 个共同祖先的情况下 并且它将创建一个虚拟提交来合并这些共同祖先 然后再继续合并最近的提交 抱歉 我不确定是否应该有一个术语这 但我一直在尝试查找有关 git merge 递归策略实际如
  • 如何传递文件名参数 gitconfig diff textconv?

    有关的文档textconv at https git wiki kernel org index php Textconv https git wiki kernel org index php Textconv有简洁的措辞 gitconf
  • 每个命令重置外部差异工具

    我最近安装了一个新的差异工具 差异性的 https github com Wilfred difftastic 这扰乱了我将差异复制到剪贴板 或文件 以发送这些内容的习惯 diff external difft As per https d
  • 方案语言:合并两个数字

    如何将列表中的两个整数合并为一个 方案中 例子 11 223 gt 11223 假设列表恰好有两个元素 并且都是数字 define merge numbers lst let 1st number gt string first lst 2
  • 合并 Pandas Dataframe:如何添加列和替换值

    我有一个数据帧 df1 并想要合并其他 许多 数据帧 df2 以便 合并发生在匹配的 多 索引上 如果缺失 将创建新列 如果列已存在 则替换值 正确的 pandas 操作是什么以及使用什么参数 我查看了 concat join merge
  • PHP 按值合并数组以获得 2 个不同的数组值

    我尝试将两个不同的数组合并为一个数组 有人可以帮我吗 我有这样的数组 0 Array 2 rank 579 id 1 1 Array 4 rank 251 id 2 0 Array 2 size S rank 251 1 Array 15
  • 如何有效地合并两个 BST?

    如何合并两个二叉搜索树并保持BST的性质 如果我们决定从树中取出每个元素并将其插入到另一个元素中 则此方法的复杂度将为O n1 log n2 where n1是树的节点数 比如T1 我们已经拆分了 并且n2是另一棵树的节点数 比如T2 执行
  • 连接两个 Git 存储库的历史记录?

    我有一个旧的 Git 存储库 请调用它app 然后 一年后 我想从头开始重建应用程序 所以我创建了一个新的存储库 称之为app 2 现在 我意识到我应该创建一个新分支或其他东西 而不是一个新的存储库 因为我想移动app 2在之上app然后摆
  • 当文件标记为“历史记录已提交”时,svn diff

    我对已合并到工作目录中主干的分支进行了更改 svn stat 显示已更改文件的正确列表 但是 svn stat 输出在计划提交新添加到分支的每个文件的历史记录中包含一个 A src main java com java 当我运行 svn d
  • 如何使用 diff 排除多行模式?

    我想对两个 xml 文件进行比较 但忽略 2 3 行模式 例如 假设我想在比较下面的 xml 格式时忽略可用性和价格 这是我到目前为止所拥有的 diff I
  • 在 Three.js 中使用多种材质来合并几何体

    我想使用 2 个网格创建一棵松树 其中 1 个用于树干 另一个用于灌木 这就是我所做的 var pine geometry new THREE Geometry var pine texture 1 THREE ImageUtils loa
  • Python:合并嵌套列表

    初学者在这里 我有 2 个要合并的嵌套列表 list1 a b c d e f g h list2 p q r s t u v w 我正在寻找的输出是 list3 a p q b c r s d e t f g h u v w 这可以在没有
  • 在ansible中合并字典

    我目前正在构建一个使用 ansible 安装 PHP 的角色 并且在合并字典时遇到一些困难 我尝试了多种方法来做到这一点 但我无法让它像我想要的那样工作 A vars file my default values key value my
  • Java:用于显示差异的 GUI 组件? [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在编写一个程序 需要在其中生成差异并显示结果 是否有任何 GUI 组件可以让我轻松完成此任务 或者我
  • 忽略提交之间 git-diff 的*所有*空白更改

    我正在检查代码库并修复空白奇怪之处并通常纠正缩进等事情 并且我想确保我没有无意中进行任何其他更改 所以我正在做git diff w显示所有已更改文件中的差异 同时忽略空白差异 问题是这实际上并没有忽略all空白差异 至少是什么I认为仅仅是空
  • 防止 Django 在并发请求时多次将同一对象保存到数据库

    对于我们的博客平台 我们有一个 文章 模型 其中包含一个 更新的 日期时间字段 class Article models Model updated models DateTimeField null True blank True 当任何

随机推荐

  • 软键盘打开时调整布局

    我在某些应用程序中看到 当显示软键盘时布局会发生变化 这当然不是adjustPan因为整个布局 可能是内部布局 发生了变化 而不仅仅是当前的EditText 例如 这是在 Evernote 登录屏幕中 你能建议一下这是怎么做的吗 下面是一个
  • 如何获取 Webview iframe 链接来启动浏览器?

    我正在使用 WebView 来显示一个页面 其中 html 包含一个 iframe 其中 src xxxxx php 该 iframe 作为带有底层链接的广告图像加载 如果我单击该图像 链接 它会尝试在原始 iframe 中加载新页面 在那
  • 为什么建议将实例变量声明为私有?

    我的问题与Java有关 但它也可以应用于C 我想知道为什么每个人都建议创建实例变量private而不是制作它们受保护的 我们想一想 子类看不到私有变量 因此如果我需要访问或更改子类中超类的变量 我被迫使用一些访问器和修改器方法 例如getM
  • 将 Windows Phone 7 应用程序中的图像文件上传到 PHP

    我正在尝试从图片库 在 WP7 上 上传图片并将其保存在服务器上的文件夹中 在服务器上 我使用 PHP 通过 POST 方法接收文件 PHP 代码是
  • 在 fortran 中生成序列数组

    Fortran中是否有一个内在函数可以生成一个包含从a到b的数字序列的数组 类似于python的range gt gt gt range 1 5 1 2 3 4 gt gt gt range 6 10 6 7 8 9 不 没有 但是 您可以
  • 获取完整的正在运行的进程列表(Visual C++)

    我目前正在使用 EnumProcesses 函数来获取正在运行的进程的列表 然而 由于我的应用程序在用户空间中运行 因此它无法获取不在用户下运行的进程 包括系统进程 的句柄 是否有其他方法可以让我访问这些内容 我所需要的只是进程名称 只是为
  • Android:减少 GridView 中列之间的空间

    请参阅随附的屏幕截图 其中我试图减少 GridView 中列之间的空间 我的main xml如下
  • SQL 选择一行并存储在 SQL 变量中

    所以 我正在编写这个存储过程 但我对 SQL 真的很烂 我向你们提出的问题是 我可以选择整行并将其存储在变量中吗 我知道我可以做类似的事情 declare someInteger int select someInteger select
  • 日期时间格式和时区

    当尝试解析日期时DateTime createFromFormatPHP 将无法识别时区 Example t new DateTime echo t gt format Y m dTH i s 将输出 2012 01 24MSK16 53
  • Rails 控制台错误需要'./example_user'

    我正在使用 Railstutorialhttp ruby railstutorial org chapters rails flavored ruby sec a user class http ruby railstutorial org
  • sqlite get 字段超过 2 MB [重复]

    这个问题在这里已经有答案了 当我尝试从 SQlite 获取数据且字段大小超过 2 MB 时 它会抛出异常 Couldn t read row 0 col 0 from Cursor Window Make sure the Cursor i
  • .Net TPL:具有任务优先级的有限并发级别任务调度程序?

    我目前正在使用 LimitedConcurrencyLevelTask Scheduler 详细信息请参见此处http msdn microsoft com en us library ee789351 aspx http msdn mic
  • 当应用于基本类型时,通过引用进行 const 调用是否会提高性能?

    对于对象 尤其是字符串 按引用调用比按值调用更快 因为函数调用不需要创建原始对象的副本 使用const 还可以确保引用不被滥用 我的问题是 如果使用基本类型 如 bool int 或 double const 按引用调用是否也会更快 voi
  • 在多个环境中执行编码的 UI 测试

    现在 我的编码 UI 测试使用它们的 app config 来确定它们执行的域 该域与环境具有 1 1 关系 为了简化它 测试网 www UAT com www prod com 在 App config 中我有类似的内容
  • Mathematica 什么时候创建新符号?

    再会 我早些时候以为数学在当前符号中创建新符号 Context在转换输入字符串的阶段 即分配给InString 来输入表达式 即分配给In 但一个简单的例子打破了这一解释 In 1 f During evaluation of In 1 I
  • 在 .NET Core 3.0 中加载 exe 时出现错误的 IL 格式

    我有两个 NET Core 3 0 WPF 项目 其中之一 我发布到一个名为 DefaultPlugin exe 的可执行文件中 在我的第二个 WPF 项目中 我尝试使用 Assembly Load 加载第一个项目并读取类型 但是 当我这样
  • 根据android中图表引擎饼图中的屏幕大小标记文本大小

    我成功使用图表引擎显示饼图 我想根据屏幕尺寸自定义标签文本大小 提前致谢 这个问题归结为解决问题 achartengine 的设计似乎考虑到了原始像素 而显示质量和像素密度在过去几年中显着提高 achartengine 示例中的标签在我的
  • LESS mixin 变量类名

    我正在使用 Font Awesome 4 0 0 并且想要在 LESS 中执行类似的操作 btn github btn btn primary margin left 3em i fa css prefix fa css prefix gi
  • 在C++中,如何读取一个文本文件的内容,并将其放入另一个文本文件中?

    我想阅读a的内容input txt文件并将其放入output txt文件 我尝试在下面的代码中执行此操作 但没有成功 我是新手C 文件操作 你能告诉我该怎么做吗 include
  • wiki 如何处理多个同时编辑?

    这件事一直萦绕在我的脑海里 所以我想我还是去问问吧 wiki 如何处理对同一内容的多次编辑 这是我所要求的一个简单的例子 假设一个页面包含以下内容 我是一页 现在假设有两个人去编辑该页面 每人加一句话 第一个人 我是一页 我是同一页的第二句