porting project with large files (git-lfs) from github

Mathieu Arnold mat at FreeBSD.org
Fri Jul 27 13:22:44 UTC 2018


On Thu, Jul 26, 2018 at 08:42:59AM -0700, Robert wrote:
> Hi, you can find it here:
> https://github.com/rayrapetyan/daal/tree/FreeBSD_support
> All files in e.g. https://github.com/rayrapetyan/daal/tree/FreeBSD_support/externals/mklfpk/lnx/lib/intel64
> are "large files" they are fetching normally when doing git pull, but when
> downloading from "codeload" (this is what FreeBSD does) - they contain just
> text hashes...

Well, yeah, like I said, this repository is using git-lfs, which is not
part of the Git distribution, but an extension. Doing a clone works for
you because you have it installed, but it does not work for me because I
do not, It ends up saying:

$ git clone https://github.com/rayrapetyan/daal.git
Cloning into 'daal'...
remote: Counting objects: 35068, done.
remote: Compressing objects: 100% (20/20), done.
remote: Total 35068 (delta 3), reused 7 (delta 2), pack-reused 35044
Receiving objects: 100% (35068/35068), 583.32 MiB | 2.71 MiB/s, done.
Resolving deltas: 100% (27544/27544), done.
git-lfs filter-process: git-lfs: not found
fatal: The remote end hung up unexpectedly
warning: Clone succeeded, but checkout failed.
You can inspect what was checked out with 'git status'
and retry the checkout with 'git checkout -f HEAD'


It seems the servers running codeload.g.o do not have git-lfs installed,
so when they run git-archive(1) you end up with the pointers to the
large files.

You will have to run git-archive yourself on a machine where git-lfs is
installed.  Something along the lines of:

git archive --format tar.gz --prefix daal-<commit-hash> -o daal-<commit hash>.tar.gz <commit hash>

And then host that file somewhere, and use it for your port.

> On 07/26/18 01:10, Mathieu Arnold wrote:
> > On Wed, Jul 25, 2018 at 11:04:41PM -0700, Robert wrote:
> > > Hi, I'm porting something hosted on github using GH_... options in Makefile.
> > > 
> > > FreeBSD tries to fetch a tar.gz archive from https://codeload.github.com and
> > > within such archive there are "large files" which contain something like:
> > > 
> > > version https://git-lfs.github.com/spec/v1
> > > oid sha256:e8f293258e38e9689cb87ffbb91c3de2c339a6c074c77115ca86d50b5a48bc64
> > > size 20413048
> > > 
> > > instead of a real data, so build fails.
> > > 
> > > What's the best way to resolve this issue?
> > Mmmm, I never tried a repository using git-lfs, I am not surprised
> > git-archive(1) does not work with it though.  What is the project so I
> > can have a look?
> > 
> 
> _______________________________________________
> freebsd-ports at freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/freebsd-ports
> To unsubscribe, send any mail to "freebsd-ports-unsubscribe at freebsd.org"
> 

-- 
Mathieu Arnold
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 963 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/freebsd-ports/attachments/20180727/e1f7c40e/attachment.sig>


More information about the freebsd-ports mailing list