我在文件.hgignore
中添加了一个文件夹,因此忽略了其中的文件(以及子目录中的文件)。但是,我刚刚将文件添加到被忽略文件夹的一个子目录中。如何将该文件添加到跟踪文件列表中?
我想这是使用GUI进行版本控制的缺点之一。我正在使用SourceTree
并且没有直接接触Hg
命令(尽管我已经启用了选项,以便在执行时显示命令并观察Hg
在后台执行的操作) 。我试过谷歌搜索问题,但找不到任何相关的结果。
答案 0 :(得分:4)
您可以通过显式添加来单独跟踪被忽略的文件。从.hgignore
手册页:
可以使用hg add X显式添加未跟踪的文件X,即使X将被.hgignore中的模式排除。
您明确表示要添加此文件的意图会覆盖.hgignore
中的偏好设置。
.hgignore
的目的主要是在完全添加目录时忽略所包含的文件。
答案 1 :(得分:1)
您需要编辑您的存储库" .hgignore
"文件并指定您希望忽略目录树,但此文件除外。例如,如果您具有以下结构:
└── a
├── b.txt
└── c.txt
并且您想忽略除不" c.txt
"之外的所有内容,然后根据您可以拥有的.hgignore
文件内容:
没有任何.hgignore
文件:
$ hg status
? a/b.txt
? a/c.txt
使用一行来忽略" a
"
$ cat .hgignore
syntax: regexp
^a/
$ hg status
? .hgignore
另外一行忽略了" a
"但不" c.txt
"文件:
$ cat .hgignore
syntax: regexp
^a/(?!c.txt).*
$ hg status
? .hgignore
? a/c.txt
希望它能提供帮助。