Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 1 Oct 2024 19:37:45 +0000
From:      Brooks Davis <brooks@freebsd.org>
To:        Matthias Fechner <mfechner@freebsd.org>
Cc:        Dave Cottlehuber <dch@skunkwerks.at>, git@freebsd.org
Subject:   Re: Impossible to push my ports directory to my CI/CD pipeline
Message-ID:  <ZvxPiTaIc0yNPZF7@spindle.one-eyed-alien.net>
In-Reply-To: <ZvxHsdk-8XP-4fuc@spindle.one-eyed-alien.net>
References:  <483fb132-0d1c-443a-9b44-b7f2f087fb3d@freebsd.org> <b10dbe8b-e1c7-4da9-8c6c-9360b2545011@app.fastmail.com> <ad3067e0-5c6d-404b-98f7-2f79387f9fcd@freebsd.org> <ZvxHsdk-8XP-4fuc@spindle.one-eyed-alien.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Oct 01, 2024 at 07:04:17PM +0000, Brooks Davis wrote:
> On Tue, Oct 01, 2024 at 12:00:30PM +0300, Matthias Fechner wrote:
> > Hi Dave,
> > 
> > Am 01.10.2024 um 10:04 schrieb Dave Cottlehuber:
> > > 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.
> > > 
> > > It's not clear to me how git "knows" about lfs, but there are
> > > a bunch of XDG_DIR config files that may impact this, viz:
> > > 
> > > https://git-scm.com/docs/gitattributes
> > > 
> > > > If I now try to push to my local repo I get:
> > > > 
> > > > git push origin
> > > > Warning: untrusted X11 forwarding setup failed: xauth key data not generated
> > > > Locking support detected on remote "origin". Consider enabling it with:
> > > >   ?? $ git config
> > > > lfs.https://gitlab.fechner.net/mfechner/Gitlab.git/info/lfs.locksverify true
> > > > Unable to find source for object
> > > > 99a670c083e000008ee29dd972b60cbad6ade1d6ec024b30ff45f41da3d19e1d (try
> > > My current thinking is there's nothing (as yet) obviously wrong with
> > > FreeBSD's git repos, but there's possibly something interacting with gitlab.
> > > 
> > > Can you create a new github repo, and try pushing your ports tree to that,
> > > to see if it sees the same issue?
> > > 
> > > Given I can't replicate this here, perhaps there is a $SOMEWHERE}/.config/git/attributes
> > > or similar /config file that influences git tooling?
> > 
> > 
> > I just did a fresh clone:
> > git clone git@gitrepo.freebsd.org:ports.git
> > 
> > cd ports
> > 
> > git lfs ls-files --all
> > 6d0aef4ba9 - java/eclipse/files/addons/eclipse.platform.swt/binaries/org.eclipse.swt.gtk.freebsd.aarch64/libswt-atk-gtk-4965r11.so
> > ed324ddc16 - java/eclipse/files/addons/eclipse.platform.swt/binaries/org.eclipse.swt.gtk.freebsd.aarch64/libswt-awt-gtk-4965r11.so
> ...
> > 
> > 
> > 
> > so it seems that there is something in the FreeBSD repository. This can maybe
> > get only fixed be rewrite the git history, but lets see, I'm currently not
> > sure as no one else is seeing this...
> 
> Hmm, this is quite bizzare.  It looks like running `git lfs ls-files --all`
> causes the repo to be lfs enabled and adds the following to the
> .git/config file:
> 
> [lfs]
>         repositoryformatversion = 0
> 
> That's surprising and a bit annoying.
> 
> I also see those files listed and they don't exist in the current
> checkout.
> 
> Digging further the following commit introduced lfs files:
> 
> commit c94e4ced329298efb06189d1c6db26e3d6ff3eef
> Author: Vladimir Druzenko <vvd@FreeBSD.org>
> Date:   Fri Sep 13 15:54:52 2024 +0300
> 
>     java/eclipse: fix build consumer devel/subversive, commit files
>     ignored with .gitignore
> <...>
> 
> 
> This commit removed them, but they are still in history so anything that
> checks that the full history is intact is now broken:
> 
> commit 3ec21e417cd5752c96b88587a5a605567ba5cd19
> Author: Norbert Grundmann <ngrundmann@gmx.de>
> Date:   Fri Sep 20 03:14:47 2024 +0300
> 
>     java/eclipse: Remove unnecessary *.so files
> <...>

I've done some searching at it looks like there are gitlab options to
disable the various checks.  I don't admin any gitlab instances so don't
know how to translate this into something you can use, but:

https://gitlab.com/gitlab-org/gitlab-foss/-/blob/master/lib/gitlab/checks/lfs_check.rb?ref_type=heads

seems to show an lfs_check.objects_missing knob to disable the precommit
check.  You might also need to disable some lfs integrity checks.

-- Brooks



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?ZvxPiTaIc0yNPZF7>