我有一个我运行的配置文件:
git update-index --assume-unchanged <name of config file>
它没有被跟踪,但它偶尔会被更新。不知道如何,但令人难以置信的沮丧。
有关我如何准确追踪造成问题的原因的任何建议吗?
答案 0 :(得分:1)
git update-index --assume-unchaged
主要是为了在file system has an inefficient lstat(2)
implementation时避免出现问题。它的主要目标是提高性能; assume-unchanged
无意保护文件免受上游更改或硬重置。
你真正想要的是git update-index --skip-worktree
。虽然文档在这方面并不是特别明显,但是当您拥有应在本地更改(as explained in this answer)的文件时应使用skip-worktree
位,同时避免提交此文件对存储库的更改。
可悲的是assume-unchanged
和skip-worktree
的名字非常糟糕地传达了他们的意图,大部分时间skip-worktree
是最佳选择和正确的解决方案。