默认的 DVC 行为是在 git 中存储连接数据吗?

Is the default DVC behavior to store connection data in git?

我最近开始玩 DVC, and I was a bit surprised to see the getting started docs 建议将 .dvc/config 存储在 git 中。

起初这似乎是个好主意,但后来我注意到我的 Azure Blob 存储帐户(即我的 Azure 用户名)也存储在 .dvc/config 中,这意味着它最终会在 git。使其不适合团队协作场景。

更不理想的(阅读:真的很可怕)是使用 dvc remote modify blah connection_string ... 输入的连接字符串也以 .dvc/config 结束,使它们以 git 结束,并且,开源项目的案例,使它们最终出现在非常个有趣的地方。

我做错了什么吗?我不希望入门文档深入探讨安全问题,但我也不希望他们在源代码管理中存储连接字符串。

我的基本假设是我是 misunderstanding/misconfiguring 某种东西,我很想知道是什么。

DVC 的配置“级别”很少,可以通过适当的标志进行控制:

  • --local - 存储库级别,默认情况下被 git 忽略 - 指定用于项目范围,敏感数据
  • project - 同上,不忽略 - 指定指定非敏感数据(默认)
  • --global / --system - 用于更多存储库的通用配置。

可以在 docs 中找到更多信息。