Mettez toutes les sauvegardes dans un dossier de sauvegarde


15

Comment puis-je configurer Emacs pour que toutes les sauvegardes soient placées dans un dossier de sauvegarde? par exemple/MyEmacsBackups


N'oubliez pas que cela pourrait avoir pour effet secondaire involontaire de laisser des informations sensibles traîner sur votre machine, même après le déplacement / la suppression des originaux. Il serait conseillé de purger ce dossier de sauvegarde de temps en temps. Ces fichiers de sauvegarde peuvent également avoir des autorisations différentes de celles des originaux.
nispio du

Réponses:


17

Découvrez backup-directory-alist, qui vous permet de définir des emplacements de sauvegarde par regexp de fichier. Pour que tout aille dans un répertoire, essayez quelque chose comme:

(setq backup-directory-alist '(("." . "~/MyEmacsBackups")))

Pour les véritables paranoïaques (comme moi), il existe également une sauvegarde à chaque enregistrement , qui (comme son nom l'indique) sauvegarde vos fichiers chaque fois qu'ils sont enregistrés dans un emplacement pratique. Cela donne une couche de protection supplémentaire par rapport au contrôle de version traditionnel, par exemple dans les cas où vous effacez accidentellement votre répertoire de travail sans archiver quelque chose.


12

Ce qui suit est un code rapide de mon .emacs. Il ne place pas seulement les sauvegardes dans un répertoire spécifique, mais enregistre également automatiquement, et fait de même pour les fichiers clochards afin qu'ils ne soient pas placés sur le système distant.

;; Put backup files neatly away                                                 
(let ((backup-dir "~/tmp/emacs/backups")
      (auto-saves-dir "~/tmp/emacs/auto-saves/"))
  (dolist (dir (list backup-dir auto-saves-dir))
    (when (not (file-directory-p dir))
      (make-directory dir t)))
  (setq backup-directory-alist `(("." . ,backup-dir))
        auto-save-file-name-transforms `((".*" ,auto-saves-dir t))
        auto-save-list-file-prefix (concat auto-saves-dir ".saves-")
        tramp-backup-directory-alist `((".*" . ,backup-dir))
        tramp-auto-save-directory auto-saves-dir))

(setq backup-by-copying t    ; Don't delink hardlinks                           
      delete-old-versions t  ; Clean up the backups                             
      version-control t      ; Use version numbers on backups,                  
      kept-new-versions 5    ; keep some new versions                           
      kept-old-versions 2)   ; and some old ones, too                           


0

Mettez ceci dans votre fichier init. Modifiez le chemin d'accès au répertoire de sauvegarde que vous avez choisi.

;;backup directory
(setq backup-directory-alist '(("" . "~/.emacs.d/emacs_backup")))
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.