忽略git项目上的任何“bin”目录

忽略git项目上的任何“bin”目录

我有这样一个目录结构:

.git/
.gitignore
main/
  ...
tools/
  ...
...

在Main和Tools以及任何其他目录中,在任何级别上,都可以有一个‘bin’目录,我想忽略这个目录(我也想忽略它下面的所有内容)。我在.gitignore中尝试过每种模式,但它们都不起作用:

/**/bin/**/*
/./**/bin/**/*
./**/bin/**/*
**/bin/**/*
*/bin/**/*
bin/**/*
/**/bin/* #and the others with just * at the end too

有人能帮我吗?如果我这样做,第一种模式(我认为应该起作用的模式)工作得很好:

/main/**/bin/**/*

但是我不想为每个顶级目录都有一个条目,我也不想每次添加一个新目录时都要修改.gitignore。

这是在Windows上使用最新的msysgit。

编辑:还有一件事是,有些文件和目录的名字中有一个子字符串‘bin’,我不想忽略这些文件和目录:)



斯蒂芬大帝
浏览 1730回答 3
3回答

慕村225694

在版本1.8.2之前,**没有任何特殊的意义.gitignore..截至1.8.2git支持**表示零或多个子目录(请参见发布说明).忽略目录树中当前级别以下的所有名为bin的目录的方法是使用.gitignore带有模式的文件:bin/在man页面中,有一个忽略名为foo使用类似的模式。编辑:如果您的git索引中已经有任何bin文件夹,您不再希望跟踪这些文件夹,那么您需要显式地删除它们。Git不会因为现在匹配一个新的路径而停止跟踪已经被跟踪的路径.gitignore模式。执行文件夹删除(雷姆)仅从索引(-缓存)递归(-r)。根bin文件夹的命令行示例:git rm -r --cached bin

BIG阳

这个.gitignore你的梦想似乎是:bin/在最高层。
打开App,查看更多内容
随时随地看视频慕课网APP