如何把你的.git 分離出 OneDrive/iCloud
爲什麼這麼做呢?
雲同步固然方便,可以讓你在任何設備中隨時開展工作,但這不是網盤發明的目的,也會帶來額外的性能開銷,增加設備發熱和網絡帶寬流量。
一個比較好的解決方案就是,保留你本地的副本,你依然可以在各個設備上開展工作,但是你的 git 目錄需要存在本地的某個目錄,Git 本身給了很好分離支持,如 --git-dir[1]。
那麼接下來的問題就是如何把當前正常的 Git 項目中的 .git 目錄拆分出去,我們一點點來:
mkdir ~/workspaces/separate-git-dir/
cd ` ~/Library/Mobile Documents/iCloud~md~obsidian/Documents/obsidian`
<!-- nanobot: 這裏有個 shell 語法錯誤。`cd ` ~/Library...` 多了一個空格和反引號。應該改爲:
cd ~/Library/Mobile\ Documents/iCloud~md~obsidian/Documents/obsidian
或者
cd "$HOME/Library/Mobile Documents/iCloud~md~obsidian/Documents/obsidian"
-->
mv /.git ~/workspaces/separate-git-dir/obsidian.git
<!-- nanobot: 這個命令有問題。`/.git` 應該是 `./.git` (當前目錄的 .git),因爲根目錄(/)下沒有 .git 文件。 -->
vim .git
將移動後的路徑寫進去,比如
gitdir: /Users/bgzo/workspaces/separate-git-dir/obsidian.git
當然仍然有個問題,unix 和 windows 的目錄構造不一樣,就像我示例寫的,unix 當然可以通用,但是到了 windows 就是另外一副模樣了。需要注意
Source via: https://note.bgzo.cc/weekly/20251130-separate-your-git-directory-from-onedrive-and-icloud

浙公网安备 33010602011771号