有沒有基於Microsoft Word/Excel內容的版本管理工具?就像SVN、Git這樣。

SVN和Git是基於文本源代碼的版本管理和多人協作編程,但不適於Word這種二進位文件。我希望能有一款就像svn一樣多人協作編寫代碼一樣實現多人協作編寫同一個word文檔。至少commit/check ou/update/conflict這些都能實現。


實在很奇怪這麼多人不知道SharePoint Server……

SVN管理文檔有天然的問題……

另外現在OneDrive也會自動保存文檔版本了……


可以使用svn管理doc和xls。

用 Word 做為 TortoiseSVN 的差異比較程序以及版本合併程序

TortoiseSVN 自帶的差異比較版本合併程序只能處理純文本文件,而對於常用的 Word 文檔則無能為力。經過我一番試驗,終於搞定了這個問題。

第一步:創建一個包含宏的Word文檔

啟動 Word,然後選擇「工具-&>宏-&>Visual Base編輯器」菜單啟動VB編輯器。在編輯器左側的「Normal」項目上點擊滑鼠右鍵,選擇「插入-&>模塊」菜單。然後輸入下列代碼:

Sub SvnCompare()

If Documents.Count 2 Then Exit Sub

ActiveDocument.Compare Documents(2).Path _

"" Documents(2).Name, "Comparison"

End Sub

Sub SvnMerge()

If Documents.Count 2 Then Exit Sub

ActiveDocument.Merge Documents(2).Path _

"" Documents(2).Name

End Sub

保存後關閉 Word。

第二步:設置 TortoiseSVN

接下來選擇「TortoiseSVN-&>Settings」菜單,並切換到「差異比較/合併」選項卡。點擊「差異比較程序」組中的「高級設置」按鈕,再點擊「添加」按鈕。輸入文件擴展名為「doc」,再點擊「…」按鈕並選中 C:Program FilesMicrosoft OfficeOFFICE11WINWORD.EXE,並在頭尾各輸入一個英文引號。後面再加上 「%base」 「%mine」 /w /mSvnCompare。

最後重複這個步驟並分別設置擴展名為 .dot、.rtf。

現在我們雙擊「日誌」條目,就可以自動啟動 Word 來比較差異了。

除了進行比較外,還可以將兩個版本合併到一起。要進行 Word 文檔的合併,還是進入 TortoiseSVN 的「差異比較/合併」選項卡,並點擊「合併程序」組中的「高級設置」按鈕。按照前面的步驟添加對 .doc、.dot和 .rtf 文件的處理。但 winword.exe 後面的參數要改成 「%merged」 「%theirs」 /w /mSvnMerge。(轉自

讓Team Foundation Server Client(TFS)能比較和合併Word文檔

事實上,現在的TortoiseSVN已經集成了這個腳本,


Sharepoint就是。不過一般很貴,但是你可以裝express版本,安裝過程比較複雜,只要你精通Windows的IT工作就能輕鬆搞定。

word不是文本文件,但是word本身支持三向合併,也就是自帶diff tool。沒有Sharepoint其實也可以用,但是這樣你就得手動操作,麻煩。

那些不熟悉office的功能的,都會紛紛放棄完美的東西去用文本文件,題主千萬不要學習他們(逃


就不能用下Google Docs嗎?你說的需求全滿足了。


其實就是一個 difftool 的問題吧。並不是 Git 的問題。


要是上規模不妨研究下SharePoint,簡單的用SVN也不錯。


或許可以換個思路,從文件版本的管理,到內容版本的管理。

文本文檔的版本控制,操作是在文件層面,什麼時間戳啊,摘要啊,但實際上也是對內容的控制。想想一個200行的類文件中有幾千行注釋掉的版本控制信息,效率低/靈活低/不安全等,總之這是很可怕的。然而office文檔和這很大的一個區別是其文檔內部可以較為容易地添加版本信息。

MS Office原生就提供協同辦公,版本管理的特性。若非要求苛刻,通常可以滿足你的需求。但大多數人只有在畢業前進行論文寫作的時候才會走走這個形式,這就是審閱功能:

這是MS Office2013的截圖,能批註,能修訂,能接受,能拒絕,能比較,能控制許可權,用戶管理。


要麼用Office365提供的共享功能,要麼用Word和Excel自帶的批註,要麼用SharePoint

除此之外的答案大部分是胡扯


Office 有一堆伺服器端的程序就是干這個的

前提是你買得起,這個真的是給辦公室用的

// @vczh


sharepoint


之前的文檔管理都是checkout鎖住編輯,完成再checkin。

新一點的方案是靠編輯工具才能實現merge操作。比如excel就支持共享編輯。

http://easydo.cn 聚合網盤和文檔編輯功能,和office整合好,支持共享編輯的。自己推薦下自家的產品。


SharePoint呀,有免費版的。

https://www.microsoft.com/zh-cn/download/details.aspx?id=35488


你可以考慮把Word改成 LaTeX,就可以使用git啦~#餿主意


有錢SharePoint Server,沒錢SharePoint Foundation


在回答的時間點, 有.

合作 | Office 365 | Microsoft

在問題提出的時間點, 有功能可以(部分)滿足題主的需求.

Word 中的修訂 - Office 支持


WPS雲協作


Office 2007 以後的 Word、Excel 文件(即 docx、xlsx 後綴的)其實都是基於 XML 的壓縮文件,因此解壓出來就是一些 XML 文件和一些資源文件(圖片等),而 XML 文件就是文本文件。這樣看來其實可以用 Git 來存放這些解壓出來的文件(類似於源代碼),用的時候 zip 壓縮下就可以了,編輯完重新解壓縮提交到 Git。哈哈哈~

PS: 至於衝突只有根據規範手工解決 XML 衝突啦,規範詳見:Standard ECMA-376


http://iCloud.com, 裡面有Page和Number,雖然不好用,但是版本管理符合你的需求。

Office365似乎雲端也有同樣的版本管理,沒注意過。


Visual Studio IDE, Code Editor, VSTS, & App Center

TFS的免費服務模塊,就是你想要的。

基於Git,你的文檔內容有冗餘,但是絕對不會丟失。

免費,而且國內使用很方便。


簡單點,用 Office 365,把文件存到 OneDrive 里。把文件分享給另外一個人。就可以同時編輯了。

商用的話就要買商業訂閱了


推薦閱讀:

GitHub、Bitbucket、Google Code 各有哪些優缺點?
如何寫好 Git commit log?
如何讓公司從 SVN 改到 Git?
Git 相比 svn 和其他版本管理工具的核心優勢有哪些?

TAG:版本控制系統 | Git | 版本管理 | 開發者 | SVNSubversion |