From nobody Wed Jan 22 23:16:08 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 4Ydg1T5pfVz5lDBP for ; Wed, 22 Jan 2025 23:16:13 +0000 (UTC) (envelope-from junchoon@dec.sakura.ne.jp) Received: from www121.sakura.ne.jp (www121.sakura.ne.jp [153.125.133.21]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4Ydg1T1dmYz3dTv for ; Wed, 22 Jan 2025 23:16:13 +0000 (UTC) (envelope-from junchoon@dec.sakura.ne.jp) Authentication-Results: mx1.freebsd.org; none Received: from kalamity.joker.local (124-18-43-234.area1a.commufa.jp [124.18.43.234]) (authenticated bits=0) by www121.sakura.ne.jp (8.17.1/8.17.1/[SAKURA-WEB]/20201212) with ESMTPA id 50MNG8LU066077; Thu, 23 Jan 2025 08:16:08 +0900 (JST) (envelope-from junchoon@dec.sakura.ne.jp) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=dec.sakura.ne.jp; s=s2405; t=1737587770; bh=Ig7LfNSsu1zpPyMqlfX+zYAn8oGcBnds2+ezp+VP2mc=; h=Date:From:To:Cc:Subject:In-Reply-To:References; b=UzIy8rBZRkFMQv/AdCNSqql9Jlo1MsjZzxlcLCQIDaWptmH6flmsugVR3nu77ZZfQ TuuMy6e+BBvlpLPIO+Ba6QrWcW1++/1WHjo3NpFipJa3RZcy1LV5Qz3/J0L4XZQU80 3QGhDo99/oPVI8gbs8UuUOIuvPCLdsn8Mk4Iu+do= Date: Thu, 23 Jan 2025 08:16:08 +0900 From: Tomoaki AOKI To: Warner Losh Cc: Tomek CEDRO , Gleb Smirnoff , Dave Cottlehuber , bob prohaska , Sulev-Madis Silber , freebsd-current Subject: Re: /usr/src and /usr/ports not git directories ? Message-Id: <20250123081608.f582cffce624815bd85354e4@dec.sakura.ne.jp> In-Reply-To: References: <3782b90b-850f-4435-8b6d-bdb83753daea@app.fastmail.com> <20250123074050.d9e331172e6b2f9dbc8b8dfd@dec.sakura.ne.jp> Organization: Junchoon corps X-Mailer: Sylpheed 3.7.0 (GTK+ 2.24.33; amd64-portbld-freebsd14.2) 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 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 4Ydg1T1dmYz3dTv 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:7684, ipnet:153.125.128.0/18, country:JP] On Wed, 22 Jan 2025 15:46:17 -0700 Warner Losh wrote: > On Wed, Jan 22, 2025 at 3:41 PM Tomoaki AOKI > wrote: > > > On Wed, 22 Jan 2025 14:31:56 -0700 > > Warner Losh wrote: > > > > > On Wed, Jan 22, 2025, 2:11 PM Tomek CEDRO wrote: > > > > > > > On Wed, Jan 22, 2025 at 5:49 PM 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=1 -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 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 + 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 just > > > > > 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. Exactly. It's one of the reason I've not yet tried it. And (lost track though) I saw somewhere stating got is much slower than git (IIRC, as of single threadded). > > > > 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. Would be. Sigh. Anyway, including .git in src and ports package does NOT mean forcing any kind of updating tool (including git itself) in base. Just wanted to be convenient. Thanks in advance! > > Warner > > > > > > > > -- > > > > CeDeROM, SQ7MHZ, http://www.tomek.cedro.info > > > > > > > > > > -- > > Tomoaki AOKI > > -- Tomoaki AOKI