Re: Impossible to push my ports directory to my CI/CD pipeline

From: Dan Mack <mack_at_macktronics.com>
Date: Tue, 01 Oct 2024 12:57:15 UTC
On Tue, 1 Oct 2024, Dave Cottlehuber wrote:

> On Mon, 30 Sep 2024, at 10:09, Matthias Fechner wrote:
>> Dear all,
>>
>> I already tried to address that problem on the all-developer list, but
>> it is maybe better to put it here.
>> I think by accident someone pushed LFS object with a commit of java/eclipse.
>
> on fediverse there was speculation that this is just files that look
> similar to git-lfs, and gitlab gets confused by them, not actually lfs
> files.
>
> In all cases I've seen, its been a gitlab instance that has had issues.
>
>> git remote -v
>> freebsd git@gitrepo.freebsd.org:ports.git (fetch)
>> freebsd git@gitrepo.freebsd.org:ports.git (push)
>> freebsd-https   https://git.freebsd.org/ports.git (fetch)
>> freebsd-https   https://git.freebsd.org/ports.git (push)
>> githubfreebsd   https://github.com/freebsd/freebsd-ports.git (fetch)
>> githubfreebsd   https://github.com/freebsd/freebsd-ports.git (push)
>> origin  git@gitlab.fechner.net:mfechner/Gitlab.git (fetch)
>> origin  git@gitlab.fechner.net:mfechner/Gitlab.git (push)
>>
>> git lfs fetch --all freebsd
>
> I'm curious why you use the `lfs` here, I guess its just to
> show lfs-related issues, and normally you don't use it?
>
> Anyway on a fresh checkout, this works fine:
>
> git clone -vv git@gitrepo.freebsd.org:ports.git -b main ports
>
> trying `git lfs clone ...` reports:
>
> WARNING: 'git lfs clone' is deprecated and will not be updated
>          with new flags from 'git clone'
>
> but also has no issues.
>
> In either case, `git lfs ls-files` shows nothing.

Are the multiple gitlab's / githubs's all maintaining separate LFS 
namespaces or are they all using the same location(s) to store "large objects"?

I have only implmented LFS on gitlab in two cases but I don't think 
repositories are necessarily portable with respect to where LFS objects 
are stored.  IIRC gitlab will just keep big objects on disk on the same 
server by default but if you configure LFS to put stuff in S3 or somewhere 
else, is that inforamtion kept in the git repository or on the 
gitlab/github/etc repository?

In other words, and I am probably wrong, I would not expect an LFS object 
on one gitlab server's LFS location to necessarily work 100% of the time 
if I got that repo from another gitlab server, as I think you would need 
to "migrate" the LFS objects from the source LFS location (disk, s3, 
etc) to the dest LFS location (disk, s3, etc).

Dan