如何`禁用或修改稀疏规则`?

问题描述 投票:0回答:2
kes@work ~/t/etc $ git rm local.conf 
The following pathspecs didn't match any eligible path, but they do match index
entries outside the current sparse checkout:
local.conf
hint: Disable or modify the sparsity rules if you intend to update such entries.
hint: Disable this message with "git config advice.updateSparsePath false"

我之前做过:

git update-index --skip-worktree etc/local.conf

如何

Disable or modify the sparsity rules

git git-checkout
2个回答
15
投票

skip-worktree
是内部标志,用于标记提交中但不属于签出的路径。 Git 有一个便利的工具,“稀疏检出”,如果你好奇的话,可以说
git help sparse-checkout
,它允许你......好吧,只对你想要使用的路径进行稀疏检出,并完全忽略其他路径中的任何内容。提交中的路径。事实证明,这在很多人从未遇到过的情况下非常方便。

当索引条目点亮该标志时,Git 的内部结构实际上会跳过会影响或引用工作树中路径的每个操作,但它们会保留索引条目以提醒自己该路径超出范围。

该提示是假设您使用稀疏结帐工具点亮该标志而编写的。按照您自己的方式使用该标志并没有什么问题,但是这些提示假定您正在做一些您在文档中尚未遇到的事情。

如果您想要删除该文件和索引条目,请先使用

git update-index --no-skip-worktree etc/local.conf
取消设置跳过工作树标志,然后
git rm
将按预期工作。

如果您想要做的只是删除索引条目,您可以直接在核心命令级别执行此操作,

git update-index --force-remove etc/local.conf
,或者像上面那样取消设置标志,然后
git rm --cached
它。


0
投票

从 .gitignore 文件中删除您的文件引用,或者只是在 .gitignore 文件中将其注释掉。

© www.soinside.com 2019 - 2024. All rights reserved.