ใส่ข้อมูลสำรองทั้งหมดไว้ในโฟลเดอร์สำรองหนึ่งโฟลเดอร์


15

ฉันจะตั้งค่า Emacs เพื่อให้สำรองข้อมูลทั้งหมดไว้ในโฟลเดอร์สำรองได้อย่างไร เช่น/MyEmacsBackups


โปรดทราบว่าสิ่งนี้อาจมีผลข้างเคียงที่ไม่ได้ตั้งใจจากการทิ้งข้อมูลที่ละเอียดอ่อนไว้บนเครื่องของคุณแม้หลังจากที่ต้นฉบับถูกย้าย / ลบ ขอแนะนำให้ทำการล้างโฟลเดอร์สำรองนี้เป็นครั้งคราว ไฟล์สำรองข้อมูลเหล่านี้อาจมีสิทธิ์ที่แตกต่างจากต้นฉบับ
nispio

คำตอบ:


17

ชำระเงินbackup-directory-alistซึ่งช่วยให้คุณกำหนดตำแหน่งสำรองโดยใช้ไฟล์ regexp หากต้องการให้ทุกอย่างไปที่ไดเรกทอรีเดียวให้ลองทำดังนี้:

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

สำหรับความหวาดระแวงอย่างแท้จริง (เช่นตัวฉันเอง) นอกจากนี้ยังมีการสำรองข้อมูลแต่ละรายการซึ่ง (ตามชื่อที่แนะนำ) จะสำรองไฟล์ของคุณทุกครั้งที่บันทึกในตำแหน่งที่สะดวก สิ่งนี้จะให้ความคุ้มครองเพิ่มเติมเป็นชั้นเหนือการควบคุมเวอร์ชันดั้งเดิมตัวอย่างเช่นกรณีเหล่านี้เมื่อคุณลบไดเรกทอรีการทำงานของคุณโดยไม่ตั้งใจโดยไม่ต้องตรวจสอบบางสิ่ง


12

.emacsต่อไปนี้เป็นรหัสที่รวดเร็วจากฉัน มันไม่เพียง แต่ทำการสำรองข้อมูลไว้ในไดเรกทอรีที่เฉพาะเจาะจงเท่านั้น แต่ยังทำการบันทึกโดยอัตโนมัติและทำเช่นเดียวกันกับไฟล์จรจัดดังนั้นไฟล์เหล่านั้นจึงไม่ถูกนำไปไว้ในระบบระยะไกล

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

ใส่ไว้ในไฟล์ init ของคุณ เปลี่ยนเส้นทางเป็นไดเรกทอรีสำรองที่คุณเลือก

;;backup directory
(setq backup-directory-alist '(("" . "~/.emacs.d/emacs_backup")))
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.