4

在我的 .gitignore 文件中,我忽略了这样的目录:

var

然后我意识到我想跟踪var/package它的所有内容。因此,我已将该排除项添加到 gitignore。我已经尝试了很多组合,但为了看起来合乎逻辑,我选择了以下组合,尤其是从这里的其他讨论中。

!var/
var/*
!var/package
!var/package/
!var/package/*

但是,每当将新文件写入 时var/package,都不会检测到它们。如果我 --force专门添加它们,但不是通过通常的程序,例如git add .

我需要发出一个命令来重置 .gitignore 以现在最终选择新的 gitignore 指令吗?我错过了什么吗?

4

1 回答 1

8

从 .gitignore 中删除任何关于 var 的内容。使用以下内容创建一个 var/.gitignore:

/*
!/package

你显然需要,git add -f var/.gitignore但在那之后一切都应该很好。

另一种选择是,在您的顶级 .gitignore 中,说:

/var/*
!/var/package

如果其中任何一个都不起作用,请输入find . -name .gitignore | xargs egrep .cat .git/info/exclude告诉我们它返回的内容。

于 2012-07-18T23:43:30.773 回答