Mercurial 拒绝忽略 Gradle 包装工件

Mercurial refuses to not ignore Gradle wrapper artifacts

我的 .hgignore 文件如下所示:

syntax: glob

# mercurial files
*.orig
*.rej

# build target and dependency directories
*/target/**
*/target-eclipse/**
.gradle/**
.gradle
*.war
*/wrapper/**
!gradle/wrapper/gradle-wrapper.jar
!gradle/wrapper/gradle-wrapper.properties
*/out/**
*/build/**

# IDE files
.idea/**
.settings/**
*.iml
*.ipr
*.iws
*.classpath
*.project

# LazyBones
.lazybones/**

# DropWizard
config.yml
config.json

# JMeter Results
*/jmeter/results/*

注意我试图从这个忽略文件中排除 gradle/wrapper/*

!gradle/wrapper/gradle-wrapper.jar
!gradle/wrapper/gradle-wrapper.properties

当我在我的项目上 运行 gradle wrapper 时,它会生成典型的 Gradle 包装文件。但是,当我 hg add 时,我没有看到那些文件(gradle-wrapper.jargradle-wrapper.properties)被添加到 hg 跟踪中,而当我推送我的项目时(hg push),我没有看到看到他们出现在远程仓库中。

我是否以某种方式错误配置了 .hgignore 实际上 hg 仍然 忽略 我的 Gradle包装工件?

对于两个特定文件,您应该手动添加它们:

hg add gradle/wrapper/gradle-wrapper.jar gradle/wrapper/gradle-wrapper.properties
hg commit

即使它们被忽略,这也会起作用,并且更改将被后续提交自动拾取。