情况
$ cat .hgignore
.hgignore
$ hg status
M file1
M file2
M src/project.xml
我不想跟踪project.xml
所以我运行
echo "project.xml" >> .hgignore
,结果是
$ cat .hgignore
.hgignore
project.xml
$ hg status
M .hgignore
M file1
M file2
M src/project.xml
因此.hgignore
现在已被修改,即使它不应被跟踪,project.xml
也不会发生任何事情。这是什么意思?
答案 0 :(得分:15)
您写道:
“ M src / project.xml”
表示src/project.xml
受版本控制。
已经受版本控制的文件不能被忽略!该
.hgignore
文件用于忽略未跟踪的文件(状态
会显示“?”)。
您有两种方法可以忽略您的文件:
hg forget
”文件,与“hg add
”相反(即,
告诉Mercurial不要再跟踪这个文件了,或者您可以使用“-X
”选项作为status/diff/commit
的默认选项
在.hg/hgrc
配置文件中,例如,
[默认]
status = -X <file>
diff = -X <file>
commit = -X <file>
将告诉hg不要在使用status,diff和commit中包含此文件。