我有一个目录,里面有我的Maven
项目
.hg
.idea
parentProject
project1
.idea
docs
src
target
pom.xml
project2
.idea
docs
src
target
pom.xml
target
pom.xml
.hgignore
我想忽略我所有项目中的.idea
和target
目录。我已经将.idea
和target
目录包含在.hgignore
中,但它只忽略.hgignore
文件所在的目录。这意味着只忽略根目录.idea
和target
中的目录。
如果我在所有子项目中添加.hgignore
文件,这不会改变任何文件仍然不会被忽略。
我的忽略列表如下:
build
dist
target
faces-config.NavData
.idea
.iml
我应该如何在.hgignore
中指定以从各处忽略.idea
和target
?
使用regex 尝试hgignore
syntax: regexp
^.idea$
^target$
**/.idea
和**/target
怎么样?在这里查看可能的模式。
您应该不需要显式忽略target
目录。
如果您错误地将其添加到Mercurial中,就会出现此问题。假设您已经完成了以下操作:
- 创建了一个项目并编译了几次(因此
target
目录存在) - 决定将源代码管理添加到项目中,因此您初始化Mercurial存储库并执行
hg add
命令(从IDE中隐式或显式)。砰!您现在有告诉Mercurialtarget
是一个应该包含的目录
相信我,我去过那里!
要修复:从命令行执行以下操作:
hg forget target
当谈到.idea
目录时,我认为除了使用.hgignore
文件之外没有其他方法,但我很困惑为什么Intellij IDE没有自动添加它。(我自己不是Intellij IDE用户)。这才是真正的问题。