我想忽略以前跟踪的文件/目录树 - 永远忽略它但拥有它not在拉取时被删除 - 只需在拉取发生的存储库上忽略它即可。这可能吗 ?为什么不(如果不是)?我应该如何进行?
注意:接受的答案从 Git 存储库中删除文件,而不将其从本地文件系统中删除- 即git rm --cached path
- 将导致文件在拉取时被删除。可恶的。不仅如此,“如果您签出删除之前的修订版,然后签出删除后的修订版,它将删除您的文件”(请参阅此comment)请参阅此问题以获取其他有趣的评论/答案,但这些评论/答案并未解决我的问题。
我完全清楚--assume-unchanged标志但这不是我想要的 - 我想告诉 git (和所有存储库克隆)“嘿,停止跟踪这个文件/树”而不是“删除这个文件/树” - 所以我想--assume-unchanged
全球范围内都如此。如果不可能(为什么?)我需要一个解决方法.
作为记录,我正在尝试引导 git 使用它来保存/共享历史记录,并且我希望能够随意停止跟踪文件/目录 -而不删除它们.
Related:
-
git 假设不变 vs 跳过工作树- 对于假设不变的一般建议应该持保留态度(拉动、重置-硬等)
-
git 假设不变 vs 跳过工作树 - 忽略符号链接- 请参阅此答案
core.sparseCheckout
我有同样的问题,我用过git rm --cached <file>
它在本地工作,但是一旦我推送到远程服务器,它也删除了文件,我不想要这样。然后我找到了 gitupdate-index --assume-unchanged <file>
它忽略本地更改,并且不会从远程服务器中删除它,效果非常好!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)