繁体   English   中英

Git忽略目录不适用于.vs目录

[英]Git ignore directory not working on .vs directory

我在让 git 忽略项目中的 .vs 隐藏目录时遇到问题。 我有以下结构,我所有的项目文件都在 MyProject 目录中,其中还包括 .vs 目录,我试图忽略它。

root/.git
root/MyProject
root/.gitattributes
root/.gitignore

root/MyProject/.vs

我试过在 .gitignore 文件中添加一堆忽略命令,但似乎都不起作用。 我试过使用

*.vs
*.vs/
*.vs/*
**/.vs
**/.vs*
**/.vs**
**/.vs/**
**/.vs/*
MyProject/*.vs
MyProject/*.vs/
MyProject/*.vs/*
MyProject/**/.vs
MyProject/**/.vs*
MyProject/**/.vs**
MyProject/**/.vs/**
MyProject/**/.vs/*

我只想忽略 .vs 文件中的所有文件。

请协助。

.vs应该做。 以防万一:将内容添加到.gitignore ,如果文件已经被跟踪,它将无法工作。 它仅适用于未跟踪的文件。

现在,如果您已经在.vs中跟踪内容并且不想这样做,那么您可以使用两种方法:

  • git rm --cached .vs

这将删除 .vs 目录以用于向前推进的修订,它不会触及工作树上的文件。 这也意味着,如果你想在一年内回到已经包含这些文件的修订版之一,你可能会覆盖文件的内容,因为你当时拥有它们可能会破坏任何取决于的东西那个元数据。

  • git filter-branchfilter-repo

这些是可以重写分支历史记录的工具,以便将 .vs 目录完全取出。 这就像拉大枪,不应该掉以轻心,因为这意味着覆盖历史......及其所有含义(超出了这个细节答案的范围)。 以防万一,filter-branch 正在逐步淘汰,filter-repo 是一个仍然不在 git 中的脚本,如果我没记错的话。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM