Matrix 是少數(shù)派的寫作社區(qū),我們主張分享真實(shí)的產(chǎn)品體驗(yàn),有實(shí)用價(jià)值的經(jīng)驗(yàn)與思考。我們會(huì)不定期挑選 Matrix 最優(yōu)質(zhì)的文章,展示來(lái)自用戶的最真實(shí)的體驗(yàn)和觀點(diǎn)。
文章代表作者個(gè)人觀點(diǎn),少數(shù)派僅對(duì)標(biāo)題和排版略作修改。
如果你使用 Android 版 Obsidian,一個(gè)必須考慮的問(wèn)題就是如何與電腦端同步筆記。
對(duì)此,誠(chéng)然可以選擇官方的 Obsidian Sync 服務(wù),或者使用 Dropbox 等第三方同步工具,但我最推薦的還是使用 Git 同步。理由在于:
相比其他解決方案,Git 是開源的,不僅免費(fèi),而且安全性有保證;
作為最先進(jìn)的分布式版本控制系統(tǒng)(沒有之一),用 Git 可以方便地實(shí)現(xiàn)版本回溯和協(xié)同編輯等功能;
Git 支持多種操作系統(tǒng)(Windows、macOS、Linux、Android、iOS),可以按需托管在國(guó)內(nèi)外多家平臺(tái)上(國(guó)外的 GitHub、GitLab,國(guó)內(nèi)的 Gitee、CODING)。
當(dāng)然,用 Git 同步的方案也有局限,包括有一定的學(xué)習(xí)成本,對(duì)純新手不友好;多設(shè)備同時(shí)編輯容易產(chǎn)生沖突;以及需要另行手動(dòng)備份存檔等。
但瑕不掩瑜,Git 仍然是我在 Windows 桌面端和 Android 端同步 Obsidian 的首選。本文就為大家介紹我的具體實(shí)現(xiàn)方案。
(注:行文簡(jiǎn)潔起見,本文假定讀者掌握命令行環(huán)境的基本操作,對(duì)于 Git 的功能和機(jī)制有初步了解。如果你不了解Git,那么本文食用起來(lái)可能會(huì)比較困難,不妨先通過(guò)廖雪峰的 Git 教程簡(jiǎn)單學(xué)習(xí)后再來(lái)嘗試。)
在開始之前,請(qǐng)確保自己的 Windows 系統(tǒng)中已經(jīng)安裝了 Git。如果還沒有安裝,可以參考廖雪峰的教程。如果你已經(jīng)安裝了,那么可以跳過(guò)這一步。
接下來(lái),我們?cè)谧约哼x用的 Git 托管平臺(tái)上新建一個(gè)筆記專用倉(cāng)庫(kù)。
考慮到國(guó)內(nèi)用戶的訪問(wèn)便捷程度和中文支持,本文將主要使用國(guó)產(chǎn)服務(wù) Gitee 演示(官網(wǎng)注冊(cè)鏈接),并簡(jiǎn)單說(shuō)明更為主流的 GitHub 平臺(tái)的對(duì)應(yīng)操作。
如果使用 Gitee:在頂部導(dǎo)航條點(diǎn)擊「+」>「新建倉(cāng)庫(kù)」,根據(jù)提示填寫信息即可(暫不勾選給出的初始化選項(xiàng))。
如果使用 GitHub:在頂部導(dǎo)航條點(diǎn)擊「+」>「New Repository」,根據(jù)提示填寫信息即可(暫不勾選給出的初始化選項(xiàng))。
接著,我們需要生成一個(gè) SSH 密鑰(SSH Key),用于在本地和遠(yuǎn)程 Git 倉(cāng)庫(kù)同步時(shí)驗(yàn)證身份。
為方便新手用戶,我準(zhǔn)備了一個(gè)配置腳本,按照如下步驟運(yùn)行即可完成配置:
創(chuàng)建一個(gè)空白的 txt(后綴為 .txt
)文檔;
將下面的代碼復(fù)制粘貼到上面的空白文檔中,將其中標(biāo)注的用戶名、郵箱等信息修改為你自己的相應(yīng)信息,然后保存;
修改文檔后綴為 .sh
并保存,雙擊執(zhí)行腳本。
#!/bin/bash
splitLine='====================================================='
userName='這里改成你的用戶名'
email='這里改成你的Email'
# 配置 git 用戶名和郵箱
git config --global user.name ${userName}
git config --global user.email ${email}
git config --global --list
echo 'Enter 或者 y 鍵確認(rèn)'
ssh-keygen -t rsa -C '${email}'
# 打印公鑰
echo '復(fù)制保存下面的公鑰添加到遠(yuǎn)程倉(cāng)庫(kù)'
echo ${splitLine}
cat ~/.ssh/id_rsa.pub
echo ${splitLine}
echo '按任意鍵退出'
read -n 1
echo '繼續(xù)運(yùn)行'
注意:
如果你本地之前生成過(guò) SSH,那么腳本會(huì)提示你是否覆蓋,此時(shí)輸入 y
回車即可。
如果操作中途不小心關(guān)掉了腳本窗口,不要慌,雙擊重新執(zhí)行腳本即可。
執(zhí)行過(guò)程中會(huì)出現(xiàn)如下圖所示的四次提示確認(rèn)步驟,簡(jiǎn)單起見,建議大家直接回車不設(shè)置參數(shù)(當(dāng)然如果你明白這些步驟的具體含義,也可以設(shè)置需要的參數(shù))。
腳本執(zhí)行完后,將分割線里面的內(nèi)容復(fù)制出來(lái)保存好。后面會(huì)用到。
如果你希望自己動(dòng)手完成配置過(guò)程,下面介紹手動(dòng)配置方法,這與前述腳本是等效的。
在空白位置點(diǎn)擊鼠標(biāo)右鍵,選擇 Git Bash(或者用你習(xí)慣的其他終端模擬器,如 Windows Terminal 等訪問(wèn) Bash 亦可):
在彈出的 Bash 窗口中,輸入下面的命令配置用戶名:
git config --global user.name 你的用戶名
以及用下面的命令配置郵箱:
git config --global user.email 你的郵箱
完成前兩步后,可以用下面的命令檢查是否配置成功:
git config --global --list
如下圖所示,如果返回的結(jié)果正確顯示了你輸入的用戶名和郵箱,說(shuō)明配置是正確的:
接著,輸入下面的命令生成 SSH Key。參考上面腳本教程的截圖,按四個(gè)回車即可。
ssh-keygen -t rsa -C '你的郵箱替換中文'
最后,用如下命令顯示生成的公鑰,將其復(fù)制出來(lái)備用:
cat ~/.ssh/id_rsa.pub
下面,我們將生成的 SSH 公鑰上傳至 Git 托管平臺(tái)。
對(duì)于 Gitee:點(diǎn)擊導(dǎo)航欄右上角頭像,選擇「設(shè)置」,然后在側(cè)邊欄菜單選擇「SSH 公鑰」,填入上一步保存的公鑰內(nèi)容并保存確認(rèn)。
對(duì)于 GitHub:點(diǎn)擊導(dǎo)航欄右上角頭像,選擇「Settings」,然后在側(cè)邊欄菜單選擇「SSH and GPG keys」,填入上一步保存的公鑰內(nèi)容并保存確認(rèn)。
下面,我們?cè)诒镜嘏渲糜糜谕降?Obsidian 筆記文件夾。
從 Gitee 或 GitHub 網(wǎng)頁(yè)端訪問(wèn)剛才新建的倉(cāng)庫(kù),由于尚未初始化,網(wǎng)頁(yè)上會(huì)展示下圖所示的配置指引:
這里,我們按其中的「創(chuàng)建 Git 倉(cāng)庫(kù)」一節(jié)配置。
具體而言,進(jìn)入你用作 Obsidian 筆記庫(kù)的文件夾,進(jìn)入后在空白處點(diǎn)擊右鍵進(jìn)入 Bash,依次執(zhí)行如下命令:
touch README.md
git init
git add README.md
git commit -m 'first commit'
git branch -M main
git remote add origin '替換為上圖中本條命令位置提示的遠(yuǎn)端地址(形如 git@gitee.com:user/repo.git)'
git push -u origin main
完成了本地倉(cāng)庫(kù)的配置,接下來(lái)要解決的就是在本地和遠(yuǎn)端之間推送和拉取筆記文件。這里,固然可以定期、手動(dòng)通過(guò)命令行的 git
命令來(lái)同步,但那未免繁瑣。
筆者慣用的方式是使用 GitKraken。這是一款免費(fèi)、圖形界面的 Git 管理工具。
安裝后,先點(diǎn)擊左上角的文件夾圖標(biāo),選擇本地 Obsidian 筆記庫(kù)打開。然后即可通過(guò)工具欄按鈕快捷地同步,或者在主界面中追蹤同步歷史等。
除了用 GitKraken 外,你也可以通過(guò) Obsidian Git 插件,直接在 Obsidian 內(nèi)部完成倉(cāng)庫(kù)的同步。
Android 端的配置相對(duì)簡(jiǎn)單,除了 Obsidian app,只需要另外安裝一個(gè) Git 客戶端即可。
這里,我推薦使用 MGit,它是筆者能找到的最符合個(gè)人需求的 app;其他的如 GitJournal 等 app 多少有些小問(wèn)題。如果你有更好用的推薦,歡迎在評(píng)論區(qū)分享。
MGit 的配置步驟如下:
在設(shè)置界面的「repos 的根存儲(chǔ)位置」擬用于存放 Android 設(shè)備上 Obsidian 筆記的路徑:
在設(shè)置頁(yè)面,點(diǎn)擊「SSH Keys」>「+」,新建 SSH 密鑰;
參考前面的方法,將生成的公鑰上傳到 Gitee 或 GitHub;
從 Gitee 或 GitHub 復(fù)制 SSH Remote 地址(即上述 Windows 配置部分第五步用到的地址,也可以在倉(cāng)庫(kù)主頁(yè)面點(diǎn)擊「下載/克隆」(GitHub 點(diǎn)擊「Code」)查看),填入遠(yuǎn)程地址,點(diǎn)擊克隆。
成功之后,打開 Obsidian for Android。一般來(lái)說(shuō),Obsidian自動(dòng)掃描到你克隆到手機(jī)的工作空間。如果沒有掃描到,那么手動(dòng)從 Obsidian 進(jìn)入上述步驟設(shè)置的倉(cāng)庫(kù)路徑,用作工作空間即可。
細(xì)心的朋友可能已經(jīng)看出來(lái)了,就是 Obsidian 的工作空間在PC和手機(jī)上都是通用的。這方面要為 Obsidian 的開發(fā)團(tuán)隊(duì)點(diǎn)贊。
不過(guò),個(gè)人不建議在手機(jī)端編輯文檔。因?yàn)槭謾C(jī)端屏幕太小影響體驗(yàn)和發(fā)揮,只負(fù)責(zé)查閱即可,編輯還是放到 PC 端比較好。
如果大家對(duì)本文方案有什么更好的建議,可以在評(píng)論區(qū)提出。
關(guān)聯(lián)閱讀:
> 下載少數(shù)派 客戶端 、關(guān)注 少數(shù)派公眾號(hào) ,了解更妙的數(shù)字生活 ??
> 想申請(qǐng)成為少數(shù)派會(huì)員?沖!
聯(lián)系客服