我所在的团队使用 dvc 和 git 对数据文件进行版本控制。我们使用 dvc 1.3.1 和 S3 存储桶远程。我在同事的分支上执行 dvc fetch
或 dvc pull
时遇到此错误:
ERROR: failed to fetch data from the cloud - DVC-file 'C:\Users\blah\Documents\repo\data\processed_data.dvc' format error: extra keys not allowed @ data['outs'][0]['size']
当我检查 dvc 文件中是否有没有问题的缓存文件时,我看到了以下内容:
md5: ded591aacbe363f0518ceb9c3bc1836b
outs:
- md5: efdab20e8b59903b9523cc188ff727e5
path: completion_header.p
cache: true
metric: false
persist: false
但是有问题的文件只有这个:
outs:
- md5: f4e15187d9a0bbb328e629eabd8d1784.dir
size: 112007
nfiles: 3
path: processed_data
在所有情况下,文件都会使用命令 dvc add %dirname%
添加到 dvc。这是我第二次在同事的分支机构(两个不同的人)看到这种情况。
自从发帖以来,我意识到我的同事 dvc 了一个目录。我尝试先创建目录,然后调用dvc fetch
,但得到相同的错误。
最佳答案
In all cases, files are added to dvc with the command dvc add %filename%.
似乎很可能其中一个 dvc 文件是在较新版本的 dvc 中创建的,而您正在尝试使用旧版本进行操作。添加新文件时,您所有的同事都使用相同的 dvc 版本吗?
关于git - DVC 文件不完整,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67122683/