From nobody Wed Jan 22 22:46:17 2025 X-Original-To: freebsd-current@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4YdfMB3xFqz5lB9r for ; Wed, 22 Jan 2025 22:46:30 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-pl1-x631.google.com (mail-pl1-x631.google.com [IPv6:2607:f8b0:4864:20::631]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4YdfMB1rShz3YdZ for ; Wed, 22 Jan 2025 22:46:30 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-pl1-x631.google.com with SMTP id d9443c01a7336-2164b662090so3824855ad.1 for ; Wed, 22 Jan 2025 14:46:30 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20230601.gappssmtp.com; s=20230601; t=1737585989; x=1738190789; darn=freebsd.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=CMXoSO2A/+3TTny4/aSFcJTu1Bewd89G0nmLM6gUqOg=; b=gEe1lG5I7g4vIFMu6dFmTK8gIyI2s/iGZvwqAu6A3WZHl7eNJxeeCtH7exqHNgbDL5 kiUeLCZJQJ6PEOD6ACWwfg1YADAGuDcHI6RH1xQiSdosnn4fukUi+URrjQhCfVqEalr2 Ll2pKSUKeF8C7QXc3lXWJt4VbbAj8KOgSFv8c0eKNL1rfa1QB+dKjasOICkuBkrhJd1u 40sEqBj/0SmQnsrW9I+8K8mvrH9pOG8nSB2L9rVdZeXl31/lu5XBGKUyRuH+w3V/FZPa rSSWmrkRbE3l8vSlx2YN42ZI+FP56wPBbD7pKw/s6fbaocaVvhBkIP8DtajIXSIiz4Oc YWOA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737585989; x=1738190789; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=CMXoSO2A/+3TTny4/aSFcJTu1Bewd89G0nmLM6gUqOg=; b=FoJpFOCokuDxPppMpiWa4aHYwIloWhHB+6b7UcDRlsGgmjB/iP4LmDBNsAfNQ2APpF vuVHjk3XwDUey577mGl76OBzCiAdTECJ8Y/cjqVb1D1I/xVoKm0v0mwdRmCu5xGZzBMz 2+PQPZDcxeoF4p3J/8niDvK11udLr42/SnJzCYj1m3EWeETl0Zy6uzQIjP+wrbM8snAn xrKCcbsRfS/43eGZQXcI9KsVgqwFP+/N25h0MHYdyVHkFUAzqO/lVeErFgqL42t/+Wnp Ne/+/bU3l6Yn8lyw109HCDdY4iL5p/be1zLa2f0gHTvj8K1B3O24CBqKctpwQoWIcrXv QKOQ== X-Forwarded-Encrypted: i=1; AJvYcCVgesek7Q4i+zNIZ3cA3Oy1LCU3Eyak1qW0NLPPxAKosBySsgtLpbjcCRfAXsr4gkWFqBUKWU2wMQMPCcty9cE=@freebsd.org X-Gm-Message-State: AOJu0YxpbY5wvjhWxsDhYZYrZsD3690Fze63h0IY4aSQ8j12P+oM9Vk9 yLW36tbijd5t8d4G5GI+XJ/koQ7nCTqVvYZoX1hjUprxXd5AlztLP9ti0DFs1mc3ifC3ah0tuTT DeEKeTd2uTL8aMzAs/DuqZPC3maVv4feTZ2aAEaoiCydFHbUUAec= X-Gm-Gg: ASbGncu+/+Z2NwbkBVDWqFHsPuBtLluk/2EJRUSwfS5rL84yKZSZL70GTX3YUpgzc2c ANn7HMOmPfwuf7hSO1Ywix0ap2aewpRns/NWVW76PNjfzLxxcagI= X-Google-Smtp-Source: AGHT+IHzlRoBg5RbHXJWgCtiqJOWBT7gyAVb+9yxuB2mr8IsygaJcrfMUEECLxyr30jX5jGtSB0cwu6zHHcRUKyYHvo= X-Received: by 2002:a05:6a21:6d87:b0:1e6:5323:58cb with SMTP id adf61e73a8af0-1eb214afd38mr35818493637.23.1737585988750; Wed, 22 Jan 2025 14:46:28 -0800 (PST) List-Id: Discussions about the use of FreeBSD-current List-Archive: https://lists.freebsd.org/archives/freebsd-current List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-current@FreeBSD.org MIME-Version: 1.0 References: <3782b90b-850f-4435-8b6d-bdb83753daea@app.fastmail.com> <20250123074050.d9e331172e6b2f9dbc8b8dfd@dec.sakura.ne.jp> In-Reply-To: <20250123074050.d9e331172e6b2f9dbc8b8dfd@dec.sakura.ne.jp> From: Warner Losh Date: Wed, 22 Jan 2025 15:46:17 -0700 X-Gm-Features: AbW1kvazYoRpMSFruIoHFkAx8Iy-WRDAFcJm-HE-Na-TiqsOxG8lT2gynd4Io-k Message-ID: Subject: Re: /usr/src and /usr/ports not git directories ? To: Tomoaki AOKI Cc: Tomek CEDRO , Gleb Smirnoff , Dave Cottlehuber , bob prohaska , Sulev-Madis Silber , freebsd-current Content-Type: multipart/alternative; boundary="000000000000a065d6062c53434f" X-Rspamd-Queue-Id: 4YdfMB1rShz3YdZ X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US] --000000000000a065d6062c53434f Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Wed, Jan 22, 2025 at 3:41=E2=80=AFPM Tomoaki AOKI wrote: > On Wed, 22 Jan 2025 14:31:56 -0700 > Warner Losh wrote: > > > On Wed, Jan 22, 2025, 2:11=E2=80=AFPM Tomek CEDRO wr= ote: > > > > > On Wed, Jan 22, 2025 at 5:49=E2=80=AFPM Gleb Smirnoff > wrote: > > > > On Wed, Jan 22, 2025 at 09:30:09AM -0700, Warner Losh wrote: > > > > W> I think what you want is > > > > W> > > > > W> % git clone https://github.com/freebsd/freebsd-src --depth=3D1 -= b > > > releng/14.2 > > > > W> --single-branch fred --bare > > > > W> % cd fred > > > > W> % mkdir .git > > > > W> % mv * .git > > > > W> % git config --local core.bare false > > > > W> > > > > W> This will clone 1 deep into the directory 'fred' and won't > checkout a > > > copy. > > > > W> If > > > > W> we make this a package, it's 325MB, as you say. That can then b= e > > > extracted > > > > W> and then you can recover the tree with: > > > > W> > > > > W> % git checkout releng/14.2 > > > > W> > > > > W> which could be done with the pkg file when extracting to /usr/sr= c. > > > I've not > > > > W> measured > > > > W> ports. > > > > > > > > I really like this plan. So before checkout .git is 337M and after > > > checkout > > > > it is 975M, which is made by actual sources + .git. > > > > > > > > Let's go forward with shipping this bare clone + optional checkout > for > > > > 15.0-RELEASE. We can ask if user wants to do the checkout, or just > keep > > > > /usr/src/.git during the install process. For upgrades, we will ju= st > > > > write new full /usr/src that includes .git on top of 14.x-RELEASE. > That > > > > will consume +50% more space on upgraded installations. I'm pretty > sure > > > > this is fine for those people who do install /usr/src, they already > ain't > > > > doing a minimal installation. We will also put this in RELNOTES. > > > > > > Very cool, thanks folks! :-) > > > > > > One question, would that imply git in base? :-) > > > > > > > Imply? No. > > > > Warner > > Can it be achieved by net/gitup, which is BSD2CLAUSE licensed? > If yes, is there any plan to pull it into base? > no. Maybe got will work, but these will be in git-native format. > I've never tried it, as I'm not enouch sure it works sanely with local > deep-cloned repo, even on stepping back to normal git. > > Another candidate could be devel/got (Game of Tree), which I've not yet > tried, too. > I think that works with git repos, but with different CLI. > Anyway, having updating tool (as was csup for CVS and svnlite for > Subversion) in base would be nice. IIRC, Subversion had the same > annoyance with git, but cannot recall clearly about how CVS was. > Would have been the same, maybe. > It's really hard to beat git fetch. Warner > > > > -- > > > CeDeROM, SQ7MHZ, http://www.tomek.cedro.info > > > > > > -- > Tomoaki AOKI > --000000000000a065d6062c53434f Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


On Wed, Jan 22,= 2025 at 3:41=E2=80=AFPM Tomoaki AOKI <junchoon@dec.sakura.ne.jp> wrote:
On Wed, 22 Jan 2025 14:31:56 -0700
Warner Losh <imp@bsd= imp.com> wrote:

> On Wed, Jan 22, 2025, 2:11=E2=80=AFPM Tomek CEDRO <tomek@cedro.info> wrote:
>
> > On Wed, Jan 22, 2025 at 5:49=E2=80=AFPM Gleb Smirnoff <glebius@freebsd.org&g= t; wrote:
> > > On Wed, Jan 22, 2025 at 09:30:09AM -0700, Warner Losh wrote:=
> > > W> I think what you want is
> > > W>
> > > W> % git clone https://github.com/freebsd/fr= eebsd-src --depth=3D1 -b
> > releng/14.2
> > > W> --single-branch fred --bare
> > > W> % cd fred
> > > W> % mkdir .git
> > > W> % mv * .git
> > > W> % git config --local core.bare false
> > > W>
> > > W> This will clone 1 deep into the directory 'fred= 9; and won't checkout a
> > copy.
> > > W> If
> > > W> we make this a package, it's 325MB, as you=C2=A0 s= ay. That can then be
> > extracted
> > > W> and then you can recover the tree with:
> > > W>
> > > W> % git checkout releng/14.2
> > > W>
> > > W> which could be done with the pkg file when extracting = to /usr/src.
> > I've not
> > > W> measured
> > > W> ports.
> > >
> > > I really like this plan. So before checkout .git is 337M and= after
> > checkout
> > > it is 975M, which is made by actual sources + .git.
> > >
> > > Let's go forward with shipping this bare clone + optiona= l checkout for
> > > 15.0-RELEASE.=C2=A0 We can ask if user wants to do the check= out, or just keep
> > > /usr/src/.git during the install process.=C2=A0 For upgrades= , we will just
> > > write new full /usr/src that includes .git on top of 14.x-RE= LEASE. That
> > > will consume +50% more space on upgraded installations.=C2= =A0 I'm pretty sure
> > > this is fine for those people who do install /usr/src, they = already ain't
> > > doing a minimal installation.=C2=A0 We will also put this in= RELNOTES.
> >
> > Very cool, thanks folks! :-)
> >
> > One question, would that imply git in base? :-)
> >
>
> Imply? No.
>
> Warner

Can it be achieved by net/gitup, which is BSD2CLAUSE licensed?
If yes, is there any plan to pull it into base?

no. Maybe got will work, but these will be in git-native format.
=C2=A0
I've never tried it, as I'm not enouch sure it works sanely with lo= cal
deep-cloned repo, even on stepping back to normal git.

Another candidate could be devel/got (Game of Tree), which I've not yet=
tried, too.

I think that works with git= repos, but with different CLI.
=C2=A0
Anyway, having updating tool (as was csup for CVS and svnlite for
Subversion) in base would be nice. IIRC, Subversion had the same
annoyance with git, but cannot recall clearly about how CVS was.
Would have been the same, maybe.

It'= ;s really hard to beat git fetch.

Warner
=C2=A0
>
> --
> > CeDeROM, SQ7MHZ, http://www.tomek.cedro.info
> >


--
Tomoaki AOKI=C2=A0 =C2=A0 <junchoon@dec.sakura.ne.jp>
--000000000000a065d6062c53434f--