From owner-freebsd-git@freebsd.org Fri Sep 25 20:47:32 2020 Return-Path: Delivered-To: freebsd-git@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 0E9403E47D3 for ; Fri, 25 Sep 2020 20:47:32 +0000 (UTC) (envelope-from bdragon@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [96.47.72.83]) (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-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4BykW76d4Gz4Yt0 for ; Fri, 25 Sep 2020 20:47:31 +0000 (UTC) (envelope-from bdragon@FreeBSD.org) Received: from auth2-smtp.messagingengine.com (auth2-smtp.messagingengine.com [66.111.4.228]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) (Authenticated sender: bdragon/mail) by smtp.freebsd.org (Postfix) with ESMTPSA id A8A0E1F682 for ; Fri, 25 Sep 2020 20:47:31 +0000 (UTC) (envelope-from bdragon@FreeBSD.org) Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailauth.nyi.internal (Postfix) with ESMTP id 3E21C27C0054 for ; Fri, 25 Sep 2020 16:47:31 -0400 (EDT) Received: from imap1 ([10.202.2.51]) by compute4.internal (MEProxy); Fri, 25 Sep 2020 16:47:31 -0400 X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedujedrvddtgdduhedvucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucgfrhhlucfvnfffucdluddtmdenucfjughrpefofg ggkfgjfhffhffvufgtgfesthhqredtreerjeenucfhrhhomhepfdeurhgrnhguohhnuceu vghrghhrvghnfdcuoegsughrrghgohhnsefhrhgvvgeuufffrdhorhhgqeenucggtffrrg htthgvrhhnpeeifeegueevudffjeetteejjeekfedttefggfeifefgteeugeeukeeguedt udetjeenucffohhmrghinhepfhhrvggvsghsugdrohhrghenucevlhhushhtvghrufhiii gvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpegsughrrghgohhnodhmvghsmhhtphgr uhhthhhpvghrshhonhgrlhhithihqddutdegvdefheekieegqddukedutdekheduqdgsug hrrghgohhnpeephfhrvggvuefuffdrohhrghesihhmrghprdgttg X-ME-Proxy: Received: by mailuser.nyi.internal (Postfix, from userid 501) id BAFD5C200A5; Fri, 25 Sep 2020 16:47:30 -0400 (EDT) X-Mailer: MessagingEngine.com Webmail Interface User-Agent: Cyrus-JMAP/3.3.0-355-g3ece53b-fm-20200922.004-g3ece53b9 Mime-Version: 1.0 Message-Id: <5d228d35-5990-4644-892e-6f2da81f6b05@www.fastmail.com> In-Reply-To: References: <20200924201715.GR1390@albert.catwhisker.org> <20200924205326.GB64154@spindle.one-eyed-alien.net> Date: Fri, 25 Sep 2020 15:47:10 -0500 From: "Brandon Bergren" To: freebsd-git@freebsd.org Subject: Re: Question on (my) workflow migration svn -> git Content-Type: text/plain;charset=utf-8 Content-Transfer-Encoding: quoted-printable X-BeenThere: freebsd-git@freebsd.org X-Mailman-Version: 2.1.33 Precedence: list List-Id: Discussion of git use in the FreeBSD project List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2020 20:47:32 -0000 On Fri, Sep 25, 2020, at 12:23 PM, Ulrich Sp=C3=B6rlein wrote: > Why not a bare repo same as with the svnsync copies before? >=20 > On each machine (doesn't matter if connected or not) he could: >=20 > git clone --bare https://.../{src,ports} >=20 > and "git fetch --all --prune" (or some combination) whenever internet > connectivity exists. Then it's easy enough to clone from that local > copy for the various branches, but it's obviously suboptimal. I > recommend to read `man git-worktree`. From those bare repos, he could > check out both stable/12 and head to some arbitrary location and keep > them updated with ... um git pull I believe. >=20 > so for svn switch, look at a bare clone + multiple worktrees (if you > need just a single worktree, then don't do the bare repo, obviously). >=20 > I also assume that your combination of svnsync + rsync was only due to= > speed, yes? You can ignore all that and always pull directly from the > cgit.freebsd.org host or whatever the final URL will be. The savings > in bandwidth are not worth it to do something else, but you can of > course `git remote add ...` on your laptop and fetch first from the > local clone and then from the internet. >=20 > In short, the svnsync crutch is no longer needed, git can do that all > natively and will be so much faster doing it, to boot. But, you'll > need to read up on clones, fetches, bare repos, worktrees and other > stuff. And actually, you can pull from or push to a *regular* clone as well, as= long as you are pushing to branches other than the currently-checked ou= t branch. (Git will prevent you from pushing to the checked-out branch t= o prevent the working copy from getting desynced.) --=20 Brandon Bergren bdragon@FreeBSD.org