那些認為自己知道一切的人對我們中的人來說是一個非常煩惱的人。
- Issac Asimov
對於MacOS用戶,Time Machine是一種無裝修,用於現場備份的設置和驗證解決方案。插入外部硬盤驅動器(或配置網絡存儲驅動器),並備份Mac的文件。
對於普通消費者而言,時間機是一個絕佳的選擇,尤其是考慮到許多MAC所有者可能只有時間機作為備用策略。但是,對於開發人員而言,Time Machine提出了一個問題:如何防止項目依賴性在時間機驅動器上佔用空間?
Asimov的目的是解決該問題,將文件系統掃描到已知的依賴目錄(例如node_modules/ Living與package.json文件相鄰),並將其排除在Time Machine備份之外。畢竟,為什麼要在備用驅動器上吃點空間,可以通過npm install輕鬆恢復一些東西?
Asimov可以以幾種不同的方式安裝:
安裝Asimov的最簡單方法是通過Homebrew:
brew install asimov如果您希望使用最新的開發版本,則可以附加--head標誌:
brew install asimov --head安裝後,您可以指示自動加載計劃的作業,以確保每天自動運行Asimov:
sudo brew services start asimov如果您不需要或想要計劃的作業,則可以按需運行Asimov:
asimov如果您希望手動安裝Asimov,則可以通過克隆存儲庫(或Mac上的任何位置下載和提取源的存檔)來做到這一點:
git clone https://github.com/stevegrunwell/asimov.git --depth 1克隆存儲庫後,運行install.sh腳本自動:
/usr/local/bin ,使其隨時隨地可用。本質上,Asimov是圍繞Apple的tmutil程序的簡單包裝紙,該計劃提供了對時間機器的更精細控制。
Asimov查找公認的依賴性目錄,驗證是否存在相應的依賴性文件,如果是的,請告訴Time Machine不要擔心備份依賴關係目錄。
也不必擔心多次運行它。 Asimov足夠聰明,可以查看目錄是否已被標記為排除。
如果您想查看所有已排除在時機中的目錄和文件,則可以通過運行以下命令(stackoverflow上的props brant bobby)這樣做:
sudo mdfind " com_apple_backup_excludeItem = 'com.apple.backupd' "如果已錯誤排除了備份目錄,則可以使用tmutil刪除排除:
tmutil removeexclusion /path/to/directory