Masukkan semua cadangan ke dalam satu folder cadangan


15

Bagaimana saya mengatur Emacs sehingga semua cadangan ditempatkan ke dalam satu folder cadangan? misalnya/MyEmacsBackups


Ketahuilah bahwa ini bisa memiliki efek samping yang tidak diinginkan dengan membiarkan informasi sensitif tetap ada di mesin Anda, bahkan setelah dokumen asli dipindahkan / dihapus. Sebaiknya bersihkan folder cadangan ini sesekali. File cadangan ini juga mungkin memiliki izin berbeda dari aslinya.
nispio

Jawaban:


17

Lihat backup-directory-alist, yang memungkinkan Anda untuk mengatur lokasi cadangan dengan file regexp. Agar semuanya masuk ke satu direktori, coba sesuatu seperti:

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

Untuk yang benar-benar paranoid (seperti saya), ada juga cadangan-setiap-penyimpanan , yang (seperti namanya) membuat cadangan file Anda setiap kali disimpan di lokasi yang nyaman. Ini memberikan lapisan perlindungan ekstra terhadap kontrol versi tradisional, misalnya untuk kasus-kasus ketika Anda secara tidak sengaja menghapus direktori kerja Anda tanpa memeriksa sesuatu.


12

Berikut ini adalah kode cepat dari saya .emacs. Itu tidak hanya menempatkan cadangan ke direktori tertentu, tetapi juga menyimpan otomatis, dan melakukan hal yang sama untuk file tramp sehingga tidak dimasukkan ke sistem remote.

;; 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

Masukkan ini ke dalam file init Anda. Ubah jalur ke direktori cadangan yang Anda pilih.

;;backup directory
(setq backup-directory-alist '(("" . "~/.emacs.d/emacs_backup")))
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.