【发布时间】:2021-05-22 04:07:02
【问题描述】:
问题
不久前,我的团队开始使用 git LFS,我们的项目使用了大约 60 GB 的 bmp 文件。我将系统中的 bmp 文件推送到远程,所有图像都正确存储在 LFS 上。
每当同事拉取存储库时,就会发生奇怪的事情,bmp 文件会被下载但存储在不同的位置。图像文件夹现在包含一堆无用的指针,而不是实际的图像。
所需的解决方案
图像文件存储在它们的实际位置,而不是无用的指针。换句话说,我希望 lfs 文件的行为与所有常规文件一样。
【问题讨论】:
-
在 Git 周围使用 LFS 包装器时,所有 Git stores 都是指针文件。包装器的工作是将这些替换为指向文件的内容。任何只获得指针文件的人都没有使用 LFS 包装器。找出他不使用包装器的原因,并纠正它。
-
@torek “使用 LFS 包装器”是什么意思?使用lfs时有不同的命令吗? |图像下载到本地系统,但存储在 .git 文件夹而不是 images 文件夹中。
-
Git-LFS 是或曾经是附加软件(它现在可能带有自己的 Git 实现以避免一些混淆;最初它是添加到任何标准 Git 的一些脚本)。如果你使用普通的 Git,你就没有使用 Git-LFS,并且会看到所有的指针文件。我自己实际上并没有使用 Git-LFS,但我已经看过它了,它的实现依赖于 Git 中的“干净”和“涂抹”过滤器——所以如果你使用一个普通的 Git 并添加附加组件,但不要不要真的把它们挂起来,你会遇到同样的问题。
-
使用
git lfs clone和git lfs init而不是git clone和git init应该建立所有正确的过滤。使用git clone代替......不会。 -
@torek 我们设法将图像拉到它们的实际位置。现在
.git/fls文件夹中的每个图像都有一个副本。我不明白为什么 git-lfs 以什么方式行事。