我创建了一个名为"Proj“的私有回购程序来存储我的项目,并使用Github来存储Github上的大文件。在那之后,我想创建另一个版本的回购。因此,我导入了第一个私有回购程序"Proj“,并命名为新的repo 。用于大文件的LFS在我的第一个repo "Proj“中工作得很好,但是当我转向第二个repo 时,我只能看到下面显示的那些图像的指针文件,而不是像第一个回购中显示的那样的实际图片。
version https://git-lfs.github.com/spec/v1
oid sha256:4e6dc2a5297236566862d27a470ec2f0baef49bb67d7099ae72e661cb0cc997d
size 54296
当我导入回购时,我选择了“包含大文件”,但我想我仍然失去了它们的链接。如何解决这个问题,并让大文件显示为正常?非常感谢!
发布于 2021-01-17 03:38:27
TLDR:由于不清楚您是如何创建Proj-public
的,我猜是.git
文件夹中的Git配置没有从原始Proj
回购复制到新的回购。为了正常工作,Git需要一些文件,即.git/info/lfs
。因此,最终发生的是正确地复制了所有源文件,而不是Git LFS配置,这就是为什么您只看到文本指针而不是实际的文件内容(例如,图像)。
向前看,做这个
今后,我建议,如果您想要创建现有存储库的副本,请将其分叉。如果不希望GitHub中的父级链接到叉中,则可以执行以下操作:
但是,您应该只使用您自己的存储库,而不应该使用其他任何人的代码。如果对流行的代码库这样做,而忽略许可条款(如果有许可条款的话),您可能会遇到一些严重的诉讼麻烦。
那么,让我们来谈谈你的问题吧。
概述
我从Git文档中摘取了大部分答案。以防万一下面是
Git LFS将尝试使用您的Git远程来确定LFS服务器。如果Git remote不支持LFS服务器,或者只想使用单独的LFS服务器,也可以配置自定义LFS服务器。在
Endpoint
中查找git lfs env
属性,以查看当前的LFS服务器。默认情况下,Git将将.git/info/lfs
附加到Git远程url的末尾,以构建它将使用的LFS服务器URL。如果Git无法猜测您的LFS服务器,或者您没有使用git-lfs-authenticate
命令,则可以使用Git配置指定LFS服务器。
设置LFS服务器
将lfs.url
设置为设置LFS服务器,而不考虑Git remote:
$ git config lfs.url https://lfs-server.com/foo/bar
您可以将remote.{name}.lfsurl
设置为只为特定的远程设置LFS服务器:
$ git config remote.dev.lfsurl http://lfs-server.dev/foo/bar
$ git lfs env
使用.lfsconfig
Git还将从存储库根目录中的.lfsconfig
文件中读取这些设置。这允许您将其提交到存储库,以便所有用户都可以使用它,或者将Git LFS配置作为Git存储库中的一个真实来源。
$ git config --file=.lfsconfig lfs.url https://lfs-server.com/foo/bar
链接
Git LFS文档:
https://stackoverflow.com/questions/65758953
复制