From owner-freebsd-git@freebsd.org Mon Dec 21 21:26:48 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 848B04C4AB3 for ; Mon, 21 Dec 2020 21:26:48 +0000 (UTC) (envelope-from bsd-lists@bsdforge.com) Received: from udns.ultimatedns.net (static-24-113-41-81.wavecable.com [24.113.41.81]) (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 "ultimatedns.net", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4D0CGJ0k18z4Z8x for ; Mon, 21 Dec 2020 21:26:47 +0000 (UTC) (envelope-from bsd-lists@bsdforge.com) Received: from ultimatedns.net (localhost [127.0.0.1]) by udns.ultimatedns.net (8.16.1/8.16.1) with ESMTP id 0BLLR2IF079801 for ; Mon, 21 Dec 2020 13:27:08 -0800 (PST) (envelope-from bsd-lists@bsdforge.com) MIME-Version: 1.0 Date: Mon, 21 Dec 2020 13:27:02 -0800 From: Chris To: freebsd-git Subject: This may be a bit late in the game, but might this b any help? User-Agent: UDNSMS/17.0 Message-ID: X-Sender: bsd-lists@bsdforge.com Content-Type: text/plain; charset=US-ASCII; format=flowed Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 4D0CGJ0k18z4Z8x X-Spamd-Bar: / Authentication-Results: mx1.freebsd.org; none X-Spamd-Result: default: False [0.00 / 15.00]; ASN(0.00)[asn:11404, ipnet:24.113.0.0/16, country:US]; local_wl_ip(0.00)[24.113.41.81] 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: Mon, 21 Dec 2020 21:26:48 -0000 Maybe others have already examined this[1]. I forgot I had a copy. eposurgeon - a repository surgeon reposurgeon enables risky operations that version-control systems don't want to let you do, such as (a) editing past comments and metadata, (b) excising commits, (c) coalescing commits, and (d) removing files and subtrees from repo history. The original motivation for reposurgeon was to clean up artifacts created by repository conversions. reposurgeon is also useful for scripting very high-quality conversions from Subversion. It is better than git-svn at tag lifting, automatically cleaning up cvs2svn conversion artifacts, dealing with nonstandard repository layouts, recognizing branch merges, handling mixed-branch commits, and generally at coping with Subversion's many odd corner cases. Normally Subversion repos should be analyzed at a rate of upwards of ten thousand commits per minute. repodiffer is a program that reports differences between repository histories. It uses a diff(1)-like algorithm to identify spans of identical revisions, and to pick out revisions that have been changed or deleted or inserted. It may be useful for comparing the output of different repository-conversion tools in detail. Another auxiliary program, repopuller, assists in mirroring Subversion repositories. ... 1. https://gitlab.com/esr/reposurgeon --Chris