【问题标题】:Readding missing files to DVC将丢失的文件读取到 DVC
【发布时间】:2019-05-24 02:46:58
【问题描述】:

当远程中缺少某些文件时,DVC 遇到了问题。例如,当我执行 dvc pull 时,我得到了输出

[##############################] 100% Analysing status.
WARNING: Cache 'c31bcdd6910977a0e3a86446f2f3bdaa' not found. File 'data/2.mp4' won't be created.
WARNING: Cache '77186c4596da7dbc85fefec6d0779049' not found. File 'data/3.mp4' won't be created.

dvc status 命令给了我:

data/2.mp4.dvc:
    changed outs:
        not in cache:       data/2.mp4
data/3.mp4.dvc:
    changed outs:
        not in cache:       data/3.mp4

似乎2.mp43.mp4在dvc控制下添加,但dvc push命令尚未执行。

我可以访问原始 mp4 文件,并且我已尝试阅读它们。我将 mp4 文件复制到数据文件夹并执行命令:

dvc remove data/2.mp4.dvc
dvc remove data/3.mp4.dvc

dvc add data/2.mp4 
dvc add data/3.mp4 

但是没有效果。如何从 dvc 控制下删除文件并重新添加?

【问题讨论】:

    标签: dvc


    【解决方案1】:

    看来我找到了解决办法。我将mp4文件复制到数据文件夹并执行命令:

    dvc add data/2.mp4 
    dvc add data/3.mp4
    
    dvc push
    

    【讨论】:

    • 您是否打算逐个文件添加?可以dvc add {directory}
    • 很高兴您找到了解决方案!我注意到每个 mp4 文件都有 dvc 文件,这让我认为您已经使用 dvc add data -R 添加了数据目录,而不是使用 dvc add data 将其作为一个整体添加。
    • 它们之间的区别在于,当您使用 dvc 添加数据时,dvc 将跟踪整个目录,因此如果您在数据中添加或删除任何内容,它将能够检测到。此外,在这种情况下,只会为整个目录创建一个 dvc 文件。如果您使用 dvc add -R data,它将递归遍历整个数据目录,并将每个文件添加到 dvc 创建一个单独的 dvc 文件,因此如果您向数据添加新文件,dvc 不会能够告诉。顺便说一句,您使用的是哪个 dvc 版本?我们最近添加了一条警告,以帮助避免这种混淆。
    • @don_pablito 谢谢你的建议!我有意单独添加文件,因为我是 DVC 的新手,我想先学习如何处理文件。
    • @RuslanKuprieiev 我的 DVC 版本是 0.40.7
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-11-19
    • 2021-03-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-18
    • 1970-01-01
    相关资源
    最近更新 更多