Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 23 Jan 2025 07:40:50 +0900
From:      Tomoaki AOKI <junchoon@dec.sakura.ne.jp>
To:        Warner Losh <imp@bsdimp.com>
Cc:        Tomek CEDRO <tomek@cedro.info>, Gleb Smirnoff <glebius@freebsd.org>, Dave Cottlehuber <dch@skunkwerks.at>, bob prohaska <fbsd@www.zefox.net>, Sulev-Madis Silber <freebsd-current-freebsd-org111@ketas.si.pri.ee>, freebsd-current <freebsd-current@freebsd.org>
Subject:   Re: /usr/src and /usr/ports not git directories ?
Message-ID:  <20250123074050.d9e331172e6b2f9dbc8b8dfd@dec.sakura.ne.jp>
In-Reply-To: <CANCZdfq%2BTAW7v-1H71HSY=pFuO2FDkzAU04q_O-6SjTBdSFgSg@mail.gmail.com>
References:  <Z4vk3009iSwuzG4K@www.zefox.net> <Z4__B0EQM-ce0qPE@cell.glebi.us> <C509F94C-2AC2-414F-90C0-355C69869D72@ketas.si.pri.ee> <Z5AQ1GcwX_MZw69G@www.zefox.net> <CANCZdfoHUsZusqMg_gWN5mB9P3xByGv_GfELi9Dd63CHto1igw@mail.gmail.com> <3782b90b-850f-4435-8b6d-bdb83753daea@app.fastmail.com> <CANCZdfruU=GR5DFWL7RQA4_yjh2-NHOB669wsOSL1DzZ3Fs7%2BQ@mail.gmail.com> <Z5Ehmzd4tp-Xf8Q8@cell.glebi.us> <CAFYkXj=nwjK%2BBnKg%2B0vkyeMu8XaLErCVe8Xr1g3%2BDOaOpeCBXA@mail.gmail.com> <CANCZdfq%2BTAW7v-1H71HSY=pFuO2FDkzAU04q_O-6SjTBdSFgSg@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, 22 Jan 2025 14:31:56 -0700
Warner Losh <imp@bsdimp.com> wrote:

> On Wed, Jan 22, 2025, 2:11 PM Tomek CEDRO <tomek@cedro.info> wrote:
> 
> > On Wed, Jan 22, 2025 at 5:49 PM Gleb Smirnoff <glebius@freebsd.org> 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?

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.

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.

> 
> -- 
> > CeDeROM, SQ7MHZ, http://www.tomek.cedro.info
> >


-- 
Tomoaki AOKI    <junchoon@dec.sakura.ne.jp>



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