- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这两者有什么区别?我们在上一份工作中使用了 git-lfs,并且在当前的工作中开始将 dvc 与 git 一起使用。它们都放置某种索引而不是文件,并且可以按需下载。 dvc 比前一个有一些改进吗?
最佳答案
DVC 并不比 git-lfs 更好:它们完全不同。所选答案很大程度上有偏见。两者只是不同的工具,用于不同的目的。
.gitignore
中),而是生成一个具有相同名称和扩展名的附加文件 .dvc
。因此,为了推送带有相应文件的提交,用户需要手动“添加”(相当于git commit,而不是git add;没有等效的对于 dvc 中的 git 阶段)并“推送”到两个系统。这不是缺点,而是必要的控制水平。作为交换,远程大文件持有者只是任何远程文件系统,可以通过其路径、通过 ssh 或通过多个驱动程序(谷歌驱动器、亚马逊等)直接访问。无论如何,钩子(Hook)也可用于 dvc,这将简化大文件的使用,如果有额外的文件对一个人来说并不烦人,并且将文件保存到远程将需要额外的操作,请记住它们是 .gitignored!因此,如果您修改存储在 dvc 中的文件,git status
不会注意到此类更改,并且您可能会丢失此类更改,除非您使用 dvc 进行额外检查。DVC 的用途与 git-lfs 不同。 DVC 不仅用于保存大文件,而且主要用于管理由确定性过程产生的大文件。因此,除了存储大文件之外,dvc 还可以像 Makefile
一样,通过在 Makefile
中定义依赖项来控制处理管道,并且如果处理输入(也是当 dvc 跟踪的文件或参数发生变化时,dvc 会计算哪些文件必须重新生成(是的,如 Makefile
)。这就是为什么 DVC 通常被描述为数据科学的 makefile 工具。如果您要大量生成大型人工智能模型或繁重的数据文件,那就太酷了。与编译大型应用程序完全相同:每个局部更改都意味着只编译整体的一小部分。
就我个人而言,我将两者都用于大文件存储。 git-lfs 简化了大文件的管理(典型案例:构建一个 AI docker 容器,里面有一个大的模型文件,同时有一个小的 git repo,几乎不需要任何 git 知识,而 dvc 需要一些),但是 dvc 简化了大文件存储(这简化了管理,例如,我可以轻松地在 DVC 存储库中找到并删除我不想要的文件,而我不能/它对 git-lfs 来说很复杂),但代价是没有这样的透明度,有时会丢失数据。我仍然不使用 dvc 进行管道计算,直到现在我更喜欢自己的实现。 DVC越来越好了,也许以后我会更多地使用它。两者只是不同;我目前根据目的使用两者。
关于git - git-lfs 和 dvc 之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58541260/
我有一个使用 git-lfs 存储一些大文件的存储库的工作副本。我安装了 git-lfs 二进制文件,但可能没有在工作副本中运行“git lfs install”。当我想在添加 lfs 文件后更新我的
我试图找到一种方法来确定 git 存储库中的文件是否由 git-lfs 正确管理。 到目前为止,我发现比较 git lfs ls-files 和 git ls-files ':(attr:filter
我正在尝试通过以下方式从 git 克隆一个项目: git clone link 并收到了这条消息 remote: Enumerating objects: 24533, done. remote: C
我有一个本地存储库,其中跟踪了一堆 git-lfs 文件。它是使用 git-lfs 版本 2.1.0 创建的。 如果我尝试使用 git-lfs 版本 1.5.6 对该存储库进行结帐,则会收到错误:
我的小组正在与另一个小组合作开展一个项目,我们为合作建立了一个 GitHub 组织。现在协作结束了,我们即将从 GitHub 中删除该组织,我需要为我的团队工作的存储库创建一个本地副本。 我的理解是g
我们在 gitlab 中有一个启用了 git-lfs 的存储库,它工作得很好。它很好地分离了 pdf、电影和其他我们不想进行版本管理的内容。 出现用户错误,有人在未启用 git-lfs 支持的系统上克
我刚刚从 https://github.com/git-lfs/git-lfs/releases 更新了我安装的 Git LFS到最新版本(2.3.0)。但是,当我运行 git lfs version
我刚刚从 https://github.com/git-lfs/git-lfs/releases 更新了我安装的 Git LFS到最新版本(2.3.0)。但是,当我运行 git lfs version
对于 GitHub 上的存储库,GitKraken 显示: This repository requires LFS but you do not have LFS installed. Modify
事情是这样的: 不小心提交了很多本不该提交的文件。 是否执行了 git reset --soft HEAD~2 以返回到事故发生前的提交 修改 gitignore 以忽略文件 再次提交并推送到原点。
在 Bitbucket 服务器上托管了 LFS git 存储库。现在我们需要创建新的 LFS 存储库并使用 LFS 存储将存储库移动到那里。 如何做到这一点? 例如对于普通的 repo 我们可以这样做
fatal: 'lfs' appears to be a git command, but we were not able to execute it. Maybe git-lfs is broke
我尝试了很多命令,但都不起作用: java -jar bfg-1.13.0.jar --convert-to-git-lfs 'lib/**' --no-blob-protection java -j
我有一个相当大的存储库,需要很长时间才能从远程克隆。我决定我可能会从 Git LFS 中受益,所以我去迁移了 repo。但是,在迁移、推送和重新克隆之后,存储库占用的磁盘空间比原始存储库多。 FS 上
我们希望将特定目录从一个 git 存储库移动到另一个。我找到了 these instructions ,直到从远程分支中 pull 出为止,一切顺利;似乎让 git-lfs 跟踪两边的文件会使过程稍微
我们希望将特定目录从一个 git 存储库移动到另一个。我找到了 these instructions ,直到从远程分支中 pull 出为止,一切顺利;似乎让 git-lfs 跟踪两边的文件会使过程稍微
当使用 Git LFS 将大文件推送到 git 存储库时,系统上没有安装 git-lfs 的用户是否可以在不进行任何额外设置的情况下克隆它? 最佳答案 我只是尝试按照您的建议去做。我使用 Git LF
请帮助我理解以下错误消息的含义以及如何遵守其要求。 我想复制一个现有的本地 git 仓库;然后将该副本推送到新创建的远程。 但是我得到以下错误: This repository is configur
故事是这样的,我们在 GitHub 上工作,并且正在使用 GitDesktop 1.0.10。 我们还使用来自 https://github.com/blog/2432-git-lfs-2-3-0-r
这个问题的另一个标题可以是“如何 check out 一个 Git-LFS 管理文件的多个版本?” 我想检查存储在 Git-LFS 中的文件的多个版本。因此,我想在我的工作目录中并排放置此文件的多个版
我是一名优秀的程序员,十分优秀!