說明:編輯衝突
外觀
在 MediaWiki 中,當多人同時編輯同一頁面並嘗試保存時,就會發生 編輯衝突。系統會自動合併一些非衝突的修改,但如果部分內容衝突,就需要手動合併。✏️
🔄 編輯衝突的原理
編輯衝突的本質是 MediaWiki 對版本控制的需要。具體來說:
- 先提交者的更改會正常保存📌,並生成一個新的歷史版本。
- 後提交者如果修改了與先提交者內容相互衝突的部分(即修改的內容有重合部分),就會觸發編輯衝突⚠️,需要手動解決衝突後才能保存。
🤖 自動合併
自 MediaWiki 1.28版本起,系統可以智能判斷是否需要手動解決衝突:
- ✅ 不會觸發衝突的情況 :
- 兩人編輯行為沒有任何重疊。
- 後提交者的修改完全包含了先提交者的修改。
- ❌ 仍然會觸發衝突的情況:
- 兩個人修改了頁面的相同部分,導致內容衝突。
- 後提交者的修改會覆蓋先提交者的內容。
🛠️ 手動合併
如果系統無法自動合併,MediaWiki 會顯示一個編輯衝突頁面,幫助您合併不同的版本。
✍️ 如何解決編輯衝突?
- 您會看到兩個文本框:
- 上方文本框:顯示當前已成功保存的版本(即其他編輯者的版本)📄。這是系統默認會保存的版本,您需要將您的修改合併到此版本中。
- 下方文本框:顯示您嘗試保存的版本✏️。
- 檢查並合併改動:
- 仔細比較兩個版本,將您在下方文本框中的修改,整合到上方文本框的版本裏。
- 如果內容衝突,需要手動調整文本,確保不丟失任何人的重要修改。
- 保存合併後的版本:
- 完成合併後,確保所有需要的更改都已在上方文本框中,然後點擊 「保存更改」✅。
🤝 編輯衝突的協調
處理衝突時,編輯者之間應以友好協商為第一準則。
如何友好地處理編輯衝突? 🤗
- 小修改 vs. 大修改:
- 如果您的只是小修改,而別人做了大量修改,建議您基於對方已保存的新版本重新編輯,然後把您的小修改再加進去。
- 可以在編輯摘要中標註,例如:"因編輯衝突調整了部分內容",以提醒其他編輯者。
- 大修改 vs. 大修改:
- 如果雙方都進行了大量修改,問題就比較複雜。雙方都應盡最大努力協商做得更好。例如,可以都先提交自己作出的修改,然後比較兩個版本,一起決定如何整合。
- 避免覆蓋他人的更改:
- 不要忽視編輯衝突,直接覆蓋別人的改動是令人無法接受的!🚫
- 使用 「顯示更改」(diff)功能🔍,檢查您所做出的合併,確保包含了之前的必要改動。
🔎 不易察覺的編輯衝突
有時,編輯衝突不會被系統檢測到。例如,如果您喜歡先把原文複製到其他文本編輯器(如 Notepad++、Sublime Text 等)中修改,完成後再一次性粘貼回 Wiki 的編輯窗口。如果在此期間有人對這篇文章進行了小修改,那麼您在粘貼時可能會覆蓋這些未被察覺的更改。
📌 如何避免?# 以上述方式編輯的用戶,應在保存後檢查 "我的貢獻" 或使用 "比較版本" 功能🔍,查看是否有新的更改,並進行必要的合併。
- 更推薦直接在 Wiki 的編輯框中進行修改,或確保在粘貼回內容前,已檢查並合併了他人可能的修改。
🚨 避免誤刪他人修改
在手動合併時,可能會不小心丟失他人的更改。
- 如果您發現自己的修改被別人覆蓋了:
最好不要直接将页面 "回退" 到您的版本,因为这可能会丢失对方做出的大量修改。 较好的做法是在对方的最新版本上进行编辑,将您丢失的小修改重新添加进去,并保留对方所作的大改动。 示例编辑摘要:"重新恢复被意外覆盖的文字"。
- 如果對方不小心刪除了您的修改:
对方应当为自己的疏忽道歉,并感谢您主动恢复改动。 如果某人频繁丢失他人的修改,可以友好地在他的 "讨论页" 留言提醒,这对于不了解如何解决冲突的新手尤其重要。
⚡ 預防編輯衝突
🏗️ 使用 「正在施工」 模板
如果您計劃進行長時間編輯,可以在頁面上添加提示。例如,使用 "正在施工" 模板🏗️,以提示此頁面正被他人認領編輯,從而減少衝突可能性。
模板代碼示例:
{{Template:Working}}
注意 :如果認領詞條後並沒有充裕的時間編輯,請及時撤掉 "正在施工" 模板,以方便其他感興趣的人參與。
📚 參見