emacs不在git repo中备份文件

时间:2019-07-06 16:21:19

标签: git emacs

emacs 不会在 git 存储库中创建文件备份。我想保存它们,因为在将更改提交到 git 存储库之前,我经常依靠它们撤消某些更改。

直到最近我一直在使用 xemacs ,它总是在第一次保存时创建通常的extension SecondViewController: UICollectionViewDelegate { func collectionView(_ collectionView: UICollectionView, canFocusItemAt indexPath: IndexPath) -> Bool { return false } func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) { // Now, thanks to the function above, this is disabled print("From didSelectItemAt indexPath: \(indexPath.item + 1)") } } 文件。但是 emacs 如果在 git 项目中工作,则不会执行此操作:在项目外部工作时,它会生成通常的备份文件,而在内部的文件则不会。 git 回购。

我在*~文件中尝试了以下操作,但未成功:

.emacs

我在这里查看了文档:

https://www.gnu.org/software/emacs/manual/html_node/elisp/Making-Backups.html

,在关于(setq make-backup-files t) (setq backup-inhibited nil) 的部分中,似乎emacs每次都会检查文件是否由控制版本系统控制,如果是的话,它将不会创建备份文件。此检查可能会阻止创建所需的备份文件。有没有办法改变这种行为?

1 个答案:

答案 0 :(得分:2)

seen here

  

如果文件受版本控制,则vc-checkin会将backup-inhibited设置为t

它也提到了completion-ignored-extensions,但是请首先检查是否已激活该模块,例如in this threadlisp/vc.el
该模块does include

   ;; (unless vc-make-backup-files
   ;;   (make-local-variable 'backup-inhibited)
   ;;   (setq backup-inhibited t))

设置vc-make-backup-files可能会有所帮助。

Backup Files”一章确实解释了:

  

对于由版本控制系统管理的文件(请参见版本控制),变量vc-make-backup-files确定是否制作备份文件。
  默认情况下为nil,因为当您将所有以前的版本存储在版本控制系统中时,备份文件是多余的