我的目标是跟踪文件,但不要因文件的变化而受到干扰。实际上它是 IDE 特定的项目设置文件夹。我想保存它。但是当我跟踪它时,承诺将分支和 checouted master 分开,它也在 master 中被跟踪。
现在项目设置的更改存在于工作目录中。这让我很困惑,我必须将更改放在我的 IDE 中的单独更改集中。虽然我不喜欢。是否可以从 woking 目录隐藏这些更改,但仍然在单独的分支中跟踪这些更改?
任何建议将不胜感激!(我相信有更优雅的解决方案)
这不是 git 的好用例。Git 用于跟踪内容,而不是存储内容然后忽略它。
因此,任何实现这一目标的机制都不是最佳的。
.gitignore
只忽略未跟踪的内容,因此它不适用于跟踪的内容。
git update-index --assume-unchanged
基本上是对 git 的承诺,即文件不会更改。改变它然后打破这个承诺,与它相关的所有问题。切换分支或合并可能会失败,因为 git 突然发现文件已更改。
您必须询问为什么需要跟踪文件。如果您需要某种可以分发的模板,则将其添加为模板(以不同的名称),并跟踪它,但忽略可以更改的实际文件。
为清楚起见进行编辑:
在这种情况下,模板并没有什么特别之处。它只是您要跟踪的数据,但名称不同。任何需要数据的人都可以复制模板并使用它。
您可以为自己的 IDE 文件使用单独的存储库。
git status
将始终将您的 IDE 文件夹显示为未跟踪,但您可以使用.gitignore
. 不要尝试添加和提交子存储库。