无法忽略DVC

时间:2019-06-05 08:07:00

标签: dvc

我使用DVC跟踪我的媒体文件。我使用MacOS,并且希望DVC忽略“ .DS_Store”文件。根据DVC文档,我可以使用.dvcignore来实现。我使用“ .DS_Store”规则创建了.dvcignore文件。但是,每次创建“ .DS_Store”时,dvc status仍会说内容已更改

这是重现我的问题的小测试:

$ git init
$ dvc init

# create directory to store data
# and track it's content with DVC
$ mkdir data
$ dvc add data

# Ignore .DS_Store files created by MacOS
$ echo ".DS_Store" > .dvcignore

# create .DS_Store in data dir
$ touch "data/.DS_Store"

如果我正确理解DVC文档,则dvc status应该打印类似“管道是最新的。没有可复制的内容”之类的内容。但是dvc status给了我

data.dvc:
        changed outs:
                modified:           data

我如何才能真正忽略“ .DS_Store”文件?

2 个答案:

答案 0 :(得分:3)

.dvcignore的当前实现非常有限。进一步了解here

请在此处提及您对此功能感兴趣-https://github.com/iterative/dvc/issues/1876。这将有助于我们的团队正确地确定问题的优先级。

目前可能的解决方法是使用以下方法之一-How to stop creating .DS_Store on Mac?

答案 1 :(得分:1)

看来这是自修复/实施以来!

$ dvc init --no-scm
...
$ mkdir data
$ dvc add data
WARNING: 'data' is empty.
Saving information to 'data.dvc'.                                                                                                                            
$ echo ".DS_Store" > .dvcignore
$ touch "data/.DS_Store"
$ tree -a data
data
└── .DS_Store

0 directories, 1 file
$ dvc status
Data and pipelines are up to date.