Word 作為 Office 三件套中,最滲透日常生活的軟體,你能想象,2023 年,本地依舊沒有自動存檔,也沒有版本管理,需要這些功能,都被強制綁定在 OneDrive 上,但是 OneDrive 的軟體品質又不如意,且對於有 NAS 的人來說,性價比不高,那有沒有什麼第三方解決方案,能幫 Microsoft 擦屁股的呢?
版本控制是一種追蹤和管理檔案變更的系統。它可以幫助您追蹤檔案的變更,恢復到以前的版本,並與其他人協作編寫檔案。
版本控制系統有兩種主要類型:集中式和分散式。集中式版本控制系統將所有檔案存儲在中央伺服器上。分散式版本控制系統將檔案存儲在所有參與者的工作電腦上。
Git 是一種分散式版本控制系統,它是目前最受歡迎的版本控制系統之一。Git 易於使用,並且可用於各種專案。
以下是使用版本控制的一些好處:
Pandoc 是一個自由軟體,可將文字轉換成多種格式,包括 HTML 、PDF 、LaTeX 、EPUB 、Docx 等。它由 John MacFarlane 開發,可在 Windows 、Mac 和 Linux 上運行。Pandoc 是學術界和技術界廣泛使用的工具,可用於撰寫和格式化文檔、生成簡報、創建電子書等。
Power by Google Bard
Git 當初被設計的初衷是對原始碼進行版本控制,純文本的內容支持非常的好,但是 Docx 這種二進制格式,就無法在 Git 中產生文字級的修改記錄,雖然還是能用,但是版本控制沒辦法預覽,那和我直接在名稱上進行 v2 v3 的命名就沒有任何區別了。
所以我們通過 Pandoc 來將 Docx 轉換成 Markdown ,並且使用 git diff
來讓 Markdown 代替 Docx 呈現文字級的預覽版本差異比較。
macOS 建議使用 Homebrew 安裝 Git 和 Pandoc: brew install git pandoc
.gitconfig
檔案,在最後面添加以下內容:[diff "pandoc"]
textconv=pandoc --to=markdown
prompt = false[alias]
wdiff = diff --word-diff=color --unified=1
git init
.gitattributes
,添加一下內容:*.docx diff=pandoc
這裡將示範文件,刪除中英文摘要中的英文摘要,然後保存檔案。
git diff {檔名}.docx
便能將 Docx 的格式處理成 Markdown然後便能通過 Git commit 等指令來做版本管理了,更多的 Git 進階操作,可以到 Git 官網 來學習。
感謝 https://cdn.ipfsscan.io/ 提供 IPFS 圖床。
去中心化 xLog 原文鏈接: https://regchien.info/Microsoft-Word-ben-di-ban-ben-kong-zhi--shi-shi-Git--Pandoc
1
Worldispow 2023-07-16 22:13:21 +08:00 via Android
在 onedrive 面前就是玩具。简单说下 onedrive 。
1 、可以记录 word 、excel 、ppt 等格式的历史版本。 2 、大多数文字工作者,每年需要记录的文档至少 10g 起步 3 、平常一个方案或者标书,大概 50-500 页。 4 、有时候改的不是文字,而是格式。 |
2
bs10081 OP @Worldispow 嗯哼,OneDrive 對於專業文字工作者來說,有必要性,但是我只是輕量化使用,不想為了他單獨用 OneDrive 保存,所以採用 Git 的方式來做版本管理,畢竟大部分時間,文字內容都是用 Markdown 保存。
|
3
MeMoDiv 2023-07-17 02:43:05 +08:00
@Worldispow #1 同意,就第 4 点已经让 Word 和 Git 水火不容了。。如果我要写的东西是可以忽略排版和格式、只注重文字本身的内容,我压根就不会用 Word 。工具和需求严重不匹配,有种核动力奥迪双钻的沉重感。( op 这个方案的 Git 部分没啥可说的,比较标准的用法之一,Word+Pandoc 的这部分替换成 typora 甚至 VS Code 可能都要好很多)
|
5
lixile 2023-07-17 11:04:34 +08:00
适合个人 所以公司到底是怎么管理文档版本的 包括格式之类的
下面我想到的 更适用的方案(或者可行的方案)是 1 、调整好一个标准模板的.docx 2 、文档开发人员编写 MD 3 、全部都上仓,通过 pandoc 根据 模板.docx 生成 最终需要的 docx 这样实现了文档标准化+CI 每次发版自动生成文档 |
6
clemente0731 2023-07-17 13:52:03 +08:00
@Worldispow 和坚果云比呢
|
7
bs10081 OP @lixile 有更好的商用解決方案,https://simuldocs.com ,唯一缺點就是貴
|
8
bs10081 OP @lixile 但是對於平常會寫 Markdown 的人,應該是不需要最終生成 docx 吧,直接像 LaTex 那樣,生成 PDF 就好了?
|
9
lixile 2023-07-17 15:58:02 +08:00
@bs10081 pdf 确实是最终产物 实际上 docx 模板 是为了排版符合某种特定格式或者要求,然后转换 pdf ,归根结底是要解决文档版本化和对应 pdf 自动生成的问题
|
12
hj18 306 天前 1
很棒的教程,解决我的实际问题,非常感谢。
|