From owner-freebsd-git@freebsd.org Sun Dec 27 20:43:07 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 2F2A14C602F for ; Sun, 27 Dec 2020 20:43:07 +0000 (UTC) (envelope-from uqs@freebsd.org) Received: from mailman.nyi.freebsd.org (mailman.nyi.freebsd.org [IPv6:2610:1c1:1:606c::50:13]) by mx1.freebsd.org (Postfix) with ESMTP id 4D3t170t65z3NKV for ; Sun, 27 Dec 2020 20:43:07 +0000 (UTC) (envelope-from uqs@freebsd.org) Received: by mailman.nyi.freebsd.org (Postfix) id 1DFA04C622B; Sun, 27 Dec 2020 20:43:07 +0000 (UTC) Delivered-To: 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 1DC114C6285 for ; Sun, 27 Dec 2020 20:43:07 +0000 (UTC) (envelope-from uqs@freebsd.org) Received: from acme.spoerlein.net (acme.spoerlein.net [IPv6:2a05:fc87:1:5::15]) (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 (2048 bits) client-digest SHA256) (Client CN "www.spoerlein.net", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4D3t166LdFz3NBZ; Sun, 27 Dec 2020 20:43:06 +0000 (UTC) (envelope-from uqs@freebsd.org) Received: from localhost (acme.spoerlein.net [IPv6:2a05:fc87:1:5:0:0:0:15]) by acme.spoerlein.net (8.16.1/8.15.2) with ESMTPS id 0BRKh3Ca001116 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NO); Sun, 27 Dec 2020 21:43:04 +0100 (CET) (envelope-from uqs@freebsd.org) Date: Sun, 27 Dec 2020 21:43:03 +0100 From: Ulrich =?utf-8?B?U3DDtnJsZWlu?= To: Gleb Smirnoff Cc: git@freebsd.org Subject: Re: Please review: suggested final merge commit on the legacy repo Message-ID: References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Disposition: inline In-Reply-To: User-Agent: Mutt/2.0.1 (2020-11-14) X-Rspamd-Queue-Id: 4D3t166LdFz3NBZ X-Spamd-Bar: ---- Authentication-Results: mx1.freebsd.org; none X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[] X-BeenThere: freebsd-git@freebsd.org X-Mailman-Version: 2.1.34 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: Sun, 27 Dec 2020 20:43:07 -0000 Thanks Gleb, I think the "centering" on the first line needs to go, it might confuse people's git log output. Furthermore, we're advocating for "freebsd" as the origin name, not "FreeBSD". Even more, we don't want folks to rename their remote, as we'll be re-using the GH remote, so they need to explictly add a legacy one, no? I did a test run of merge-based and rebase-based histories earlier today and jotted down my notes in https://github.com/freebsd/git_conv/wiki/Rebase---Merge-experiments , though there's nothing in there you don't already know. We should probably also make it clear that going forward, one should try to branch from a fresh main, and not schlepp around every commit twice :( I'll update the wiki page with the recommendation in a bit. I also wonder if we really should make this a merge commit, or a regular commit. From my notes above, it's actually rather easy to merge in legacy-master, then main-as-of-3cc0c0d66a06 and then main. The first step needs to be done anyway, the 2nd is guaranteed to be conflict free and the third step is just another regular merge-from-head. And people that merge in stable/X need to do this anyway. Also missing is a way for them to reach out for more help, the link to the wiki might give some folks ideas, but I think we can be more explicit here. I've inlined the short set of commands required that should work for main and stable (and have tested some of them, though I'm less sure about the various upstream magic that happens with git rebase, as one can elect to not provide half the refs) Please see the latest commit on https://github.com/uqs/freebsd Thanks Uli > >-- >Gleb Smirnoff >commit 11f284b67940bcacb2f618858b901e9254ef5992 >Merge: 9e4440ca5ba7 3cc0c0d66a06 >Author: Gleb Smirnoff >AuthorDate: Wed Dec 23 22:44:48 2020 -0800 >Commit: Gleb Smirnoff >CommitDate: Sun Dec 27 09:15:53 2020 -0800 > > !!! IMPORTANT ANNOUNCEMENT !!! > > This commit is the last commit to the legacy FreeBSD github mirror, that > used to import data from official FreeBSD subversion and resided at > https://github.com/freebsd/freebsd.git. > > The new FreeBSD github mirror imports data from official FreeBSD git. The > history in the new git tree is different to the legacy one. Thus, if you > were using the legacy tree to base your work on, you need to migrate. > > This commit merges the legacy tree and the new tree together. This will > allow you to migrate without rebasing. Once you pulled in this commit > and merged it to your tree, you need to switch to the new remote and > from now on merge from it. The following example assumes your current > remote for FreeBSD is named 'FreeBSD': > > % git remote rename FreeBSD legacy > % git remote add FreeBSD anongit@git.freebsd.org:src.git > % git fetch legacy/master > % git rev-parse legacy/master # shall return this commit! > % git merge legacy/master # the last merge from legacy > % git remote delete legacy > % git fetch FreeBSD/main > % git merge FreeBSD/main # the way to merge from now on > % git gc # you may want to run this once after the first merge > > Please consult with > > https://github.com/freebsd/git_conv/wiki/Migrating-merge-based-project-from-legacy-git-tree > > for any changes for the above instructions in the future. >