如何git忽略与容器目录同名的文件?

时间:2014-12-10 20:47:03

标签: git gitignore

名为“project”的文件是构建的结果,它生成一个与容器目录同名的二进制文件:

project/
    src/
    main.c
    project <-- binary file, same name as container directory

更一般,如何忽略与其容器目录同名的文件?请记住,如果重命名“project”目录,结果构建的文件也将更改名称。

2 个答案:

答案 0 :(得分:3)

要匹配与其包含目录同名的文件,您需要一种比.gitignore使用的shell globs更强大的语言,就像带有反向引用的正则表达式一样。

之前已经问过如何在.gitignore中使用正则表达式的问题(Example),答案一直是“你做不到。”

习惯于在重命名目录时必须更新.gitignore。

答案 1 :(得分:2)

您可以在.gitignore中指定以根git目录开头的路径。所以对于你的例子,你可以把

/project/project

.gitignore中。我不确定git中是否有一种方法可以查看存储库名称并忽略同名文件,但是因为您似乎正在使用脚本(或makefile或其他)来构建您在存储库中保留的内容,您应该能够从该脚本写入.gitignore。像

这样的东西
echo $projName"/"$projName > .gitignore

会奏效。您需要指定.gitignore的位置,具体取决于您的makefile /脚本所在的位置。