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