git 如何从远程直接拉取/检索数据到外部目录,而不是使用DVC创建本地副本?

mgdq6dx1  于 2023-08-01  发布在  Git
关注(0)|答案(1)|浏览(138)

我目前正在做一个项目,我想使用DVC将数据从外部位置推/版本到远程存储,然后将更新从远程存储库拉/检索回外部位置。在这个过程中,我打算只在本地工作区中保留.dvc文件
为了提供更多的上下文,下面是具体的要求:

*跟踪外部数据集:我有一个位于/external-to-workspace/dataset的外部数据集,我想使用DVC跟踪这个数据集。
*上传数据集版本到DVC Remote:我需要使用ssh将不同版本的数据集上传到一个DVC远程,该远程位于ssh://example.com/path/to/storage
*从DVC Remote更新外部数据集:当从远程拉取/检索数据集时,我不想创建数据集的本地副本,而是想更新外部数据集本身。这意味着对DVC远程中的数据集所做的更改应反映在原始外部位置中。

我尝试了dvc import-url --to-remote,它将数据从外部复制到远程,但dvc pull创建本地副本,而不是再次拉取到外部目录。
我相信DVC提供了必要的功能来实现这一点,但我不确定所需的确切步骤和配置。如果任何人有类似的设置经验或如何实现这一点的任何建议,我将非常感谢您的指导。

webghufk

webghufk1#

这个选择怎么样。在/external-to-workspace/中,初始化一个自己的DVC和Git仓库。在其中,您可以使用所有常规命令,如dvc adddvc push等来版本化您的数据并将其保存到远程。数据位置保持不变/external-to-workspace/dataset,您只会有额外的/external-to-workspace/.dvc/external-to-workspace/.git。要避免数据重复,请确保启用了符号链接。
在项目存储库中,您将有两个选项。
1.直接使用外部仓库中的数据,不要在其中使用DVC。
1.使用dvc import(+设置DVC,使其与外部存储库共享该高速缓存,这样我们就不会移动数据)。
作为一种方法,这听起来合理吗?(我可以给予出更具体的命令来说明如何尝试它)。

相关问题