dsh-env-backup:DSH 環境自動備份插件

前言

DSH 環境開發中,插件安裝或更新可能改變插件表,導致配置混亂。若環境損壞,回退是必要的。dsh-env-backup 插件在插件表變化時自動備份 ~/.dsh/profiles/web 目錄,通過輪轉命名和保留策略防止環境丟失。

插件定位

dsh-env-backup 是一個 DSH 環境自動備份插件,由 ikanger 維護。它解決的問題是:在插件安裝/更新導致 web 插件表變化時,自動備份 ~/.dsh/profiles/web 目錄,支持輪轉命名和保留策略自動清理。

核心功能

  1. 自動觸發:支持啓動時指紋比對、週期檢查、插件表事件和手動觸發。
  2. 輪轉命名:最新備份爲 web.latest_bak,舊備份數字時間戳。
  3. 保留策略:支持配置 retentionDays(保留天數)、maxBackups(最大備份數)和 backupDir(備份目錄)。
  4. 設置頁集成:提供備份目錄、保留時長、立即備份和恢復指引的設置項。
  5. 精準清理:僅清理匹配 web.latest_bak 或 web.<12位時間戳> 的備份目錄。

安裝與啓用

安裝命令如下:

dsh plugin --profile web add github:<你的用戶名>/dsh-env-backup

安裝後需重啓 dsh 才能生效。

典型用法

環境恢復

若環境崩潰:
1. 停止 dsh。
2. 將備份目錄中的 web.latest_bak(或某個 web.YYYYMMDDHHMM)複製回 profiles/web。
3. 重新啓動 dsh。

配置備份策略

可在設置頁調整保留策略,配置會持久化到 ~/.dsh/web-backup.json。

注意事項

  • 備份目錄默認爲 ~/.dsh/profiles。
  • 配置文件生成位置爲 ~/.dsh/web-backup.json。
  • 插件以 bundle 形式寫入 profile 的 dsh.profile.bundles。
  • web.latest_bak 是插件表變化後生成的備份,若損壞請回退到 web.YYYYMMDDHHMM。

結語

該插件通過自動化備份流程,降低了環境配置丟失的風險。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜