小编pbb*_*bhu的帖子

如何将文件添加到 dvc 跟踪文件夹而不提取整个文件夹的内容?

假设我正在 git/dvc 存储库中工作。有一个data包含100k小文件的文件夹。我按照文档的建议将 DVC 作为单个元素进行跟踪:

dvc add data
Run Code Online (Sandbox Code Playgroud)

因为根据我的经验,DVC 在逐个跟踪这么多文件时有点慢。

我将存储库克隆到另一个工作区,现在我data.dvc在本地拥有该文件,但内部还没有任何实际文件。我想添加一个名为newfile.txtdata文件夹的文件并使用 DVC 跟踪它。有没有办法在不提取本地全部内容的情况下data做到这一点?

我现在尝试过的:

  1. data再次添加文件夹:

    mkdir data
    mv path/to/newfile.txt data/newfile.txt
    dvc add data
    
    Run Code Online (Sandbox Code Playgroud)

    该文件是从仅包含的data.dvc本地状态再次构建的,因此这不起作用。datanewfile.txt

  2. 将文件添加为data文件夹中的单个元素:

     dvc add data/newfile.txt
    
    Run Code Online (Sandbox Code Playgroud)

    我得到:

     Cannot add 'data/newfile.txt', because it is overlapping with other DVC tracked output: 'data'. 
     To include 'data/newfile.txt' in 'data', run 'dvc commit data.dvc'
    
    Run Code Online (Sandbox Code Playgroud)
  3. 按照建议使用 dvc commit

     mkdir data
     mv path/to/newfile.txt data/newfile.txt
     dvc commit …
    Run Code Online (Sandbox Code Playgroud)

dvc

5
推荐指数
1
解决办法
3398
查看次数

标签 统计

dvc ×1