我想在git存储库中使用dvc的管道功能。数据以其他方式进行管理,并且不应由dvc进行版本控制。所需的唯一功能是当调用dvc repro时dvc再现流水线所需的步骤。在新系统上签出存储库应该会导致一个“空”存储库,其中没有存储任何管道步骤。
因此,如果我理解正确的话,就不需要跟踪存储库中的dvc.lock文件了。但是,在.gitginore文件中添加dvc.lock会导致一条错误消息:
ERROR: 'dvc.lock' is git-ignored.对于这种用例,有没有办法禁用.gitignore检查中的dvc.lock?
发布于 2021-06-23 04:24:48
这绝对是可能的,因为DVC功能彼此之间是松散耦合的。您可以通过编写dvc.yaml文件来执行管道处理,但通过在舞台输出(outs field)中使用cache: false来避免数据管理/版本控制。另请参见辅助dvc stage add -O (big O,--outs-no-cache的别名)。
对于初始数据依赖关系也是如此,您可以对它们进行dvc add --no-commit (ref)。
您确实希望跟踪Git中的dvc.lock,以便DVC可以确定与每个存储库副本或分支中的Git提交相关联的管道的最新阶段。
您将负责在工作区中放置正确的数据文件/目录(匹配.dvc文件和dvc.lock),以便dvc repro或dvc exp run按预期运行。dvc checkout将无法帮助您。
https://stackoverflow.com/questions/68082912
复制相似问题