根据本教程,当我更新文件时,我应该先从DVC控制下删除文件(即执行dvc unprotect <myfile>.dvc或dvc remove <myfile>.dvc),然后再通过dvc add <mifile>添加它。但是,还不清楚是否应该对目录应用相同的工作流。
我有DVC控制下的目录,其结构如下:
data/
1.jpg
2.jpg是否应该每次更新目录内容时运行dvc unprotect data?
更具体地说,我感兴趣的是是否应该在以下用例中运行dvc unprotect data:
3.jpg新文件。data dir中的2.jpg图像,则为1.jpg图像的话,.发布于 2019-05-24 05:04:26
发布于 2022-04-21 10:11:35
上面的链接不再起作用了,->这里是最新的链接,并且在这里粘贴说明:
修改内容
用dvc取消保护解除文件链接。这将使train.tsv安全地编辑:
dvc unprotect train.tsv然后编辑文件的内容,例如:
echo "new data item" >> train.tsv将该文件的新版本与DVC一起添加:
dvc add train.tsv
git add train.tsv.dvc
git commit -m "modify train data"如果您有远程存储和/或上游回购:
dvc push
git push替换文件
如果要完全替换该文件,可以执行以下步骤。
首先,通过在.dvc文件上使用dvc remove停止跟踪文件。这将从工作区中删除train.tsv (并从缓存中解除它的链接):
dvc remove train.tsv.dvc接下来,用新内容替换该文件:
echo new > train.tsv然后重新开始追踪:
dvc add train.tsv
git add train.tsv.dvc .gitignore
git commit -m "new train data"如果您有远程存储和/或上游回购:
dvc push
git pushhttps://stackoverflow.com/questions/56285351
复制相似问题