From owner-freebsd-current@freebsd.org Tue Jan 5 16:46:03 2021 Return-Path: Delivered-To: freebsd-current@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 033DB4C223F for ; Tue, 5 Jan 2021 16:46:03 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-qk1-x734.google.com (mail-qk1-x734.google.com [IPv6:2607:f8b0:4864:20::734]) (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 "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4D9JKQ2016z4jVy for ; Tue, 5 Jan 2021 16:46:02 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by mail-qk1-x734.google.com with SMTP id z11so27056189qkj.7 for ; Tue, 05 Jan 2021 08:46:02 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=o+wAaCL9x8eyER7leH2KU+ero3tUe0yv8QGI2xhvkCc=; b=fLw1yQ8EMg1QktByEiIWfOtvSpBO44mjbUkIs5A3pC1YYnyU6tjsGVjrNJQZ+zHOmC Wf5YPh+Nd8DJJuVdFQRGeAG4RgWe2cF6BnGS9TvHy89kp4hZr1o4HaHyTAhmuMkd4awE tbl3S5vHwf0J1nkBY7eobcCaB40ICjRjBb6Z1QAwtSbVYnOMg2ytrWEFIXF0AmufOE4b 1pxzkcrpk4NbyLJLiZsO9heJ9WOvpn+4mhPhZvP059WbzSjN0wEDBEE/YQUksmUYe8yE LU/Brq9HkGmjY3QcK834DOgET1zAfN7MVOewbYUVRntazZ2YiSFbVUcZc3+4Neo3s+NR 0RZQ== X-Gm-Message-State: AOAM531TqVtzX/+djk9zRI/UnbyHA1IDaiG7rl6hq4v5qHYEAESvr5K/ Mq02R+09705tw74QQ0Soeh+zGnde5OjTPrJIo1M1UUBxAHw/YXJP X-Google-Smtp-Source: ABdhPJxYz3bf9IipF4f6svM6Ni0d7WCYcv7ZYOZ9pfsnsCo3CaUXJoGxUhbhcjL8iAd9ZXcNsg9DnftEYabtLCRtKBM= X-Received: by 2002:ae9:ebd5:: with SMTP id b204mr328620qkg.195.1609865161297; Tue, 05 Jan 2021 08:46:01 -0800 (PST) MIME-Version: 1.0 References: <94447.1609779520@critter.freebsd.dk> <94622.1609782682@critter.freebsd.dk> <20210105040634.GF4278@mailx.dglawrence.com> In-Reply-To: <20210105040634.GF4278@mailx.dglawrence.com> From: Warner Losh Date: Tue, 5 Jan 2021 09:45:50 -0700 Message-ID: Subject: Re: git non-time-sequential logs To: David G Lawrence Cc: Current FreeBSD X-Rspamd-Queue-Id: 4D9JKQ2016z4jVy X-Spamd-Bar: -- X-Spamd-Result: default: False [-2.99 / 15.00]; RCVD_TLS_ALL(0.00)[]; ARC_NA(0.00)[]; R_DKIM_ALLOW(-0.20)[bsdimp-com.20150623.gappssmtp.com:s=20150623]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; FROM_HAS_DN(0.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; PREVIOUSLY_DELIVERED(0.00)[freebsd-current@freebsd.org]; DMARC_NA(0.00)[bsdimp.com]; SPAMHAUS_ZRD(0.00)[2607:f8b0:4864:20::734:from:127.0.2.255]; TO_MATCH_ENVRCPT_SOME(0.00)[]; TO_DN_ALL(0.00)[]; DKIM_TRACE(0.00)[bsdimp-com.20150623.gappssmtp.com:+]; RCPT_COUNT_TWO(0.00)[2]; RCVD_IN_DNSWL_NONE(0.00)[2607:f8b0:4864:20::734:from]; NEURAL_HAM_SHORT(-0.99)[-0.994]; R_SPF_NA(0.00)[no SPF record]; FORGED_SENDER(0.30)[imp@bsdimp.com,wlosh@bsdimp.com]; MIME_TRACE(0.00)[0:+,1:+,2:~]; RBL_DBL_DONT_QUERY_IPS(0.00)[2607:f8b0:4864:20::734:from]; ASN(0.00)[asn:15169, ipnet:2607:f8b0::/32, country:US]; FROM_NEQ_ENVFROM(0.00)[imp@bsdimp.com,wlosh@bsdimp.com]; MAILMAN_DEST(0.00)[freebsd-current]; RCVD_COUNT_TWO(0.00)[2] Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.34 X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 05 Jan 2021 16:46:03 -0000 On Mon, Jan 4, 2021 at 9:06 PM David G Lawrence wrote: > > Yes. Git has never been a true/pure VCS. However, it does offer enough > > VCS-like features to create a shared distributed versioned tree that's > > useful to the project. > > > > As for date order, we could also add a commit hook that requires the date > > to be properly set, but that creates friction for developers. Is that > > friction worth the benefits? I don't think so, but as you say we could > also > > add notes... but since there's no checkout by date feature, I'm not sure > > what good it would do. > > Warner, > > Why is it that the project can't continue to operate the SVN server in > addition to Git, gatewaying with -current as is being done with 12-stable? > As a developer, I definitely need monotonic revision numbers and reliable > dates when I'm trying to troubleshoot a regression. I understand that you > want better 'collaboration' in FreeBSD, but why can't we have the best of > both worlds? > Hi David, We purposely decided not to mirror main -> head. This is a conversion and git is the source of truth. Mirroring to head would have created additional demand for the continued generation of git notes to coordinate the subversion rXXXX numbers than just having it be for stable/12. The script that's been written, but delayed due to illness just publishes changes to subversion: nothing more. Even this simple design took more time and effort than anticipated. Mirroring to stable/12 only gives an effective end date for subversion. Git does provide you the tools you want to do bisection, they are just a bit different. Just as subversion provided new tools that CVS didn't, git does the same. Subversion was also unfamiliar at first and took some time to understand its paradigms and how they differed from CVS. They also sounded scary and crazy at the time, but turned out to be more fear of the unknown rather than actual problems in practice. Git provides a revision count on a branch (or since inception) that can be used to soften the blow of rXXXX numbers going away that's almost the same (it won't coordinate between branches, but then we rarely needed that property of rXXXX numbers). Git doesn't provide checkout by date, but we've not needed that since CVS days when it was the only way to bisect a change (though I will admit it was handy to be able to do it, one can still do it, but with a little more effort and fuzziness). So to do the mirroring back to subversion was hard, created logistical issues, and was one more thing that needed care and feeding. As such, we limited its scope to limit the extra work for the project and to time-bound how long that obligation lasts. Warner