标签: git-lfs

在 Amazon S3 上使用 Git LFS 的 Gitlab

既然 Gitlab 宣布了Git LFS 支持,我想问是否可以将 Git LFS 文件存储在 Amazon S3 上?我不想将存储库本身存储为 LFS 文件。

amazon-s3 gitlab git-lfs

7
推荐指数
2
解决办法
3152
查看次数

git-lfs中的多个文件版本

我正在尝试估计我的项目在GitHub上的存储需求,并对git-lfs如何存储文件的多个版本有一些疑问:

  • git-lfs是否存储文件的多个版本?
  • 如果是这样,对文件的每次更改都会导致整个文件被复制,还是仅存储差异?
  • 所有版本都会计入github上的配额吗?
  • 有什么方法可以控制保留多少个版本?

git github git-lfs

7
推荐指数
2
解决办法
796
查看次数

列出Git LFS未跟踪的文件

我正在用一大堆文件初始化一个新的Git仓库.回购正在使用Git LFS.我想确保在我第一次提交之前告诉LFS跟踪应该处理的所有文件.

我看到git lfs ls-files它将列出LFS跟踪的所有文件.但是,(a)我想要相反:repo中未被LFS跟踪(并且在其中.gitignore)的所有文件,以及(b)此命令仅在您提交文件后才有效.

有没有人有一些git-fu或Ubuntu-fu列出repo中所有未被忽略的文件,并且与.gitattributeGit LFS使用的各种文件中的轨道模式不匹配?


我最接近的是这个命令,它将repo中的文件列出超过100kB,然后手动扫描所有文件,并希望我用跟踪模式覆盖它们.

find . -type f -exec du -Sha -t 100000 {} +
Run Code Online (Sandbox Code Playgroud)

git git-lfs

7
推荐指数
2
解决办法
2119
查看次数

在使用 git-lfs 时有没有更好的方法来做`git subtree pull`?

我有两个存储库:parentchild. 他们都使用 git-lfs。我正在尝试child作为子树导入到parent.

parent目录中时,我尝试添加它并得到以下信息:

> git subtree add --prefix child [child_url]
git fetch [child_url] master
From [child_url]
* branch            master     -> FETCH_HEAD
Downloading [child_binary_file_path] (12.55 KB)
Error downloading object: [child_binary_file_path] ([sha])

Errors logged to .git\lfs\objects\logs\20170613T115607.1992713.log
Use `git lfs logs last` to view the log.
error: external filter git-lfs smudge -- %f failed 2
error: external filter git-lfs smudge -- %f failed
fatal: [child_binary_file_path]: smudge filter lfs failed
Run Code Online (Sandbox Code Playgroud)

在日志文件中,我看到

Error downloading …
Run Code Online (Sandbox Code Playgroud)

git git-subtree git-lfs

7
推荐指数
0
解决办法
830
查看次数

Git 格式补丁补丁不能跨不同存储库使用 LFS

我们目前正在从 CVS 迁移到 git 存储库。然而,一个团队大约一年前已经将 cvs2git 用于他们的存储库,因为他们的新功能需要大量具有历史记录的移动文件,而 CVS 在历史上并不擅长。然后,两个存储库都应该将 GIT-LFS 用于我们更大的签入源(例如,预先构建的外部库)

我们的想法是创建相同的起点,以便在迁移后将所有更改与历史记录合并到我们的存储库中。

所以我已经有了起点的精确复制品;这个想法是现在使用 git format-patch 创建所有补丁文件。现在大多数补丁都运行良好,问题仅在于使用 git lfs 的补丁。

一个例子:

diff --git a/Foo/bar/baz.zip b/Foo/bar/baz.zip
new file mode 100644
index 00000000000..6fce3f4bd05
--- /dev/null
+++ b/Foo/bar/baz.zip
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:c90b657621e07fa40476186d94e2f6e06f055b49294b83ee976f73dfac120d86
+size 116056
-- 
2.13.2.windows.1
Run Code Online (Sandbox Code Playgroud)

当我尝试应用该补丁时,会发生以下情况:

$ git am ../patches/mypatch.patch
Applying: #someTfsId: myCommit
Downloading Foo/bar/baz.zip (113.34 KB)
Error downloading object: Foo/bar/baz.zip (c90b657): Smudge error: Error opening media file.: open D:\repositories\myrepo\.git\lfs\objects\c9\0b\c90b657621e07fa40476186d94e2f6e06f055b49294b83ee976f73dfac120d86: The system cannot find the file specified.

Errors logged …
Run Code Online (Sandbox Code Playgroud)

git format-patch git-lfs

7
推荐指数
1
解决办法
635
查看次数

无需结帐即可下载 Git LFS 文件

我正在寻找一种方法来下载我在 repo 中的一些 git LFS zip 文件,而不必签出整个存储库。

我尝试了以下方法:

curl -L <URL to the file RAW download on github page>

  • 这将下载一个 html 文件而不是实际文件。

curl -L <URL from .lfsconfig file + object ID from the file's pointer information in git repo>

  • 给出“未找到”错误

更多示例尝试:

curl  -L https://gitlfs.es.com/api/company/myrepository/content/framework/7d5dfcf764118df4867dc676b615e1ee4bf67e5b37fd56275f8845d
 
curl  -L https://gitlfs.es.com/api/company/myrepository/7d5dfcf764118df4d188d5838867dc676b615e1ee4bf67e5b37fd56275f8
 
curl  -L https://gitlfs.es.com/api/company/myrepository/sha256:7d5dfcf764118df4d188d5838867dc676b615e1ee4bf67e5b37fd56275f8845d
Run Code Online (Sandbox Code Playgroud)

以上似乎都不起作用

任何线索将不胜感激。

git git-lfs

7
推荐指数
1
解决办法
861
查看次数

使用新的 .gitattributes 文件迁移 Git-LFS

我有一个较大的(32k 次提交)git 存储库,我需要在其中重写一个分支中的历史记录以删除 .gitattributes 文件所描述的一堆大文件。这个分支完全是本地的,从来没有碰到过远程(实际上我们的远程因为历史上的大文件而拒绝了它)。

我知道以下命令将遍历分支的历史记录并删除所有.dll文件:

$ git lfs migrate import --include='*.dll'
Run Code Online (Sandbox Code Playgroud)

但是由于 .gitattributes 文件存在并且相当广泛,如果在创建分支时 .gitattributes 文件已经存在,那么是否有一个命令可以简单地重放为指针化这些文件所做的工作?

git git-lfs

7
推荐指数
1
解决办法
677
查看次数

批处理响应:此存储库禁用了 Git LFS?

现在,github 向用户提供免费的私有仓库。因此,我创建了一个私有仓库并尝试使用Git LFS.

当我尝试将文件推送到远程时,出现此错误:

batch response: Git LFS is disabled for this repository.
batch response: Git LFS is disabled for this repository.
batch response: Git LFS is disabled for this repository.
Uploading LFS objects:   0% (0/100), 0 B | 0 B/s, done
batch response: Git LFS is disabled for this repository.
batch response: Git LFS is disabled for this repository.
batch response: Git LFS is disabled for this repository.
error: failed to push some refs to 'https://github.com/mrdulin/programming-ebooks.git'
Run Code Online (Sandbox Code Playgroud)

这是否意味着私人回购不支持 …

github git-lfs

6
推荐指数
1
解决办法
5355
查看次数

如何在 Heroku 上部署 Git LFS?

我在Node.js上完成了一个项目,该项目已经推送到GitHub,该项目有一个大于100MB的视频,需要Git LFS。Git LFS 成功推送到 GitHub,没有任何问题。

这个项目的第二阶段是在 Heroku 上托管,这就是我陷入困境的地方。我都尝试过:

heroku buildpacks:add https://github.com/BureauxLocaux/heroku-buildpack-git-lfs.git
Run Code Online (Sandbox Code Playgroud)

heroku buildpacks:add (name of the app given by heroku)/heroku-buildpack-git-lfs
Run Code Online (Sandbox Code Playgroud)

当它被推送时使用

git push heroku master --no-verify
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

remote: -----> Git LFS app detected
remote: Env var BL_BUILDPACK_GIT_LFS_REPO is not set
remote:  !     Push rejected, failed to compile Git LFS app.
remote: 
remote:  !     Push failed
remote: Verifying deploy...
remote: 
remote: !   Push rejected to intense-journey-80070.
remote: 
To https://git.heroku.com/intense-journey-89070.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed …
Run Code Online (Sandbox Code Playgroud)

github heroku node.js git-lfs

6
推荐指数
1
解决办法
4364
查看次数

获取 git LFS 文件时出错:服务器上不存在对象:[404] 服务器上不存在对象

我下载并安装了 Git Large File Storage。现在我正在尝试从 github 中的现有存储库(不是我的)中获取 lfs 文件。我试过:

git lfs clone https://github.com/MKnoche/wiki_bias_embedding

然后在我本地刚刚克隆的 repo 中:

git lfs fetch --all

git lfs pull

我也试过同样的但没有“lfs”。

存储库已克隆,但对于所有 lfs 文件,始终显示此错误:

[301582dabd8c6ac7bdf626c7e4a1d64c8f9665b65b6334b44642bdfb78054575] Object does not exist on the server: [404] Object does not exist on the server
Run Code Online (Sandbox Code Playgroud)

进而:

error: failed to fetch some objects from 'https://github.com/MKnoche/wiki_bias_embedding.git/info/lfs'
Run Code Online (Sandbox Code Playgroud)

结果,不是真正的大文件,而是克隆它们在 GitHub 本身中可以看到的小指针。

同时这个命令:

git log --all -p -S 301582dabd8c6ac7bdf626c7e4a1d64c8f9665b65b6334b44642bdfb78054575

给出以下结果:

commit 36c7dba69de90d99f0c305fce13a598b8f06b443
Author: Markus Knoche <knoche.markus@googlemail.com>
Date:   Wed Sep 11 18:01:25 2019 +0200 
Add embeddings 
diff --git …
Run Code Online (Sandbox Code Playgroud)

git github git-lfs

6
推荐指数
2
解决办法
7423
查看次数

标签 统计

git-lfs ×10

git ×7

github ×4

amazon-s3 ×1

format-patch ×1

git-subtree ×1

gitlab ×1

heroku ×1

node.js ×1