如何在GIT中存储文件,使其不会被跟踪?

如何在GIT中存储文件,使其不会被跟踪?,git,gitignore,Git,Gitignore,我的git存储库中有一个.ini文件。它是一个默认配置文件,记录用户可以设置的密钥。我希望克隆存储库的用户获得这些默认值。但是,稍后,每个用户(开发人员)都会根据自己的偏好修改.ini。存储库还有一个.gitignore文件,其中列出了.ini。问题是我不知道如何告诉git不要跟踪这个文件。实现这一点的正确方法是什么?您可以让用户运行git更新索引--跳过worktree my.ini,这可能是安装脚本的一部分。他们可以在以后使用--不跳过工作树撤消此操作,如果他们想将更改推后 然而,根据per

我的git存储库中有一个
.ini
文件。它是一个默认配置文件,记录用户可以设置的密钥。我希望克隆存储库的用户获得这些默认值。但是,稍后,每个用户(开发人员)都会根据自己的偏好修改
.ini
。存储库还有一个
.gitignore
文件,其中列出了
.ini
。问题是我不知道如何告诉git不要跟踪这个文件。实现这一点的正确方法是什么?

您可以让用户运行
git更新索引--跳过worktree my.ini
,这可能是安装脚本的一部分。他们可以在以后使用
--不跳过工作树
撤消此操作,如果他们想将更改推后

然而,根据per的评论使用模板通常是更好的选择。您仍然可以使用安装脚本来确保模板已实例化


正如您可能已经注意到的那样,
.gitignore
并不能阻止已经跟踪的文件被跟踪。

您可以使用类似于git tracked
config.ini.tmpl的东西来保存默认配置。用户可以自己将其复制到
config.ini
,或者在必要时通过git跟踪的shell脚本生成后者。复制/生成的
config.ini
应该被git忽略。我重读了几次你的帖子,仍然无法理解。您希望您的
.ini
可以通过克隆下载,但在开发人员修改并尝试推送时,git不会跟踪它。您还说您已经拥有了
.gitignore
中提到的
.ini
。那应该符合你的要求。那么问题出在哪里呢?我有什么遗漏吗?