当我没有对我的存储库做任何事情时,为什么`.git/index`会改变?

Nor*_*sey 6 git unison

使用最新的Debian版本的git(我正在使用1.7.2.5),我注意到.git/index文件可能会神秘地改变,而我没有执行任何我认为应该更改存储库的操作.(我的shell偶尔运行,git branch因此它可以显示检出的分支,但不应该更改任何内容.)更改会生成一个.git/index与原始文件长度相同但包含不同位的文件. 导致这种变化的原因是什么,我怎么能阻止它呢?

(这种变化很不方便,因为它会让Unison文件同步器变得混乱.)

Nor*_*sey 0

罪魁祸首原来是 Emacs VC 模式: https://emacs.stackexchange.com/questions/38418/could-magit-be-writing-git-index-without-my-intervention

为了使这篇文章成为一个答案,而不是一个评论,我必须说更多。所以正确的答案在这里重现:

Emacs VC 使用计时器定期刷新一些信息并调用git命令来执行此操作,其中一些会触及索引。

如果 VC 是导致此问题的原因,则删除Git可能 vc-handled-backends会解决此问题。