This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [Contrib PATCH] Add scripts to convert GCC repo from SVN to Git
- From: Joseph Myers <joseph at codesourcery dot com>
- To: Maxim Kuvyrkov <maxim dot kuvyrkov at linaro dot org>
- Cc: GCC Patches <gcc-patches at gcc dot gnu dot org>, Jason Merrill <jason at redhat dot com>, Paolo Bonzini <pbonzini at redhat dot com>, Richard Biener <richard dot guenther at gmail dot com>, Martin Liška <mliska at suse dot cz>
- Date: Fri, 23 Aug 2019 21:30:39 +0000
- Subject: Re: [Contrib PATCH] Add scripts to convert GCC repo from SVN to Git
- Ironport-sdr: JJcwWTPKYNmdv0+ZTAfTMI4YXY9oYHFRvW9cgoOT+vKtL53YHI12GRcotqv6eyVhOKunbarFMs FPXjyfsX6gSlnZ+Se9Ssv/8aRs4OD+VVSYmbb0nicsRu6VxUrGGQdd8ij5AXiKH5Jr60bj3oQ8 XATlxLIaxG8LJXS8cjqspLBFJjFIjh6F7kL9tprrjX+7GBwqDyeSSY2pQEOt+Gmx5Eb16BC4XU gShqn962WKmeq2WZs6HQOeACp8WnRuhlcrq2BE8IhxguxK4fV4URlIH0EY1pfvSRs9OLCftdgM Csg=
- Ironport-sdr: Q3309IfCiCvrziHHMBpVrSUBRUr2LGLkIOigsDhl1Z76u4JE7kRp8k29IdIg5vBvpfZCpETmHR biikRq7VhUCs/vFOGTV0FNqvxfZS9SXZgYU71JnhGbQVvIr6GSJXqVEHPox48WWLu8S2n32e72 LNQcHZo4XNz3KqrZBT76mQiZl9X0SGh3BxFKLGGrIeeCDA+5hJn0xNicmSKsiURNUmm1Gt1Aj+ bFQ7E3W5olp9j3iHJvHj0Biceun9pA0yXwiuPsnA7IJf6hGwGnRcwzfkKM1jt1hbmp9H+c7LHJ 7hs=
- References: <E8A06A10-5BBC-4C2F-9C09-D5413B98D2DC@linaro.org> <8C62F814-2F57-4D1A-B66F-5C5ACFF37D6C@linaro.org> <4E46E435-F95C-46AD-87F0-8220D2BF4CD4@linaro.org> <CADzB+2nTUSH+i-XzAavnL3BfZjXLm53d0e3JgPfKZi5X8ijA9g@mail.gmail.com> <BC4A0163-3A45-4C3D-AA79-5DCEB6BF524A@linaro.org> <7FA7C370-04F5-448E-95D2-426607B99CF4@linaro.org> <CADzB+2=B=Fv34nqt+D103YCQocBTsVs80CCNFHkv_4cJ0gKfWQ@mail.gmail.com> <846D2EF4-879F-4518-ABA5-7DD74E6B4F18@linaro.org> <C320B2E1-09C8-46EC-8AB6-AC044BB03BA9@linaro.org> <7835E1FD-DE75-4F0E-81E5-1B23CFBDD884@linaro.org> <7A734FBC-74CF-43AC-AADA-29809F2CD3AC@linaro.org>
On Fri, 23 Aug 2019, Maxim Kuvyrkov wrote:
> I propose that we switch to gcc-pretty.git repository, because it has
> accurate Committer and Author fields. Developer names and email
> addresses are extracted from source history, and accurately track people
> changing companies, email addresses, and names. IMO, it is more
> important for people to get credit for open-source contributions on
> github, ohloh, etc., than the inconvenience of rebasing local git
> branches. It's also an important marketing tool for open-source
> companies to show stats of their corporate email addresses appearing in
> git commit logs.
I concur that accurately crediting contributors is important and means we
should not start from the existing mirror (though we should keep its
branches available, so references to them and to their commit hashes
continue to work - either keeping the existing repository available under
a different name, or renaming the branches to put them in the new
repository - which should not enlarge the repository much because blob and
tree objects will generally be shared between the two versions of the
history).
I note that the Go conversion of reposurgeon is now just five test
failures away from passing the whole reposurgeon testsuite (at which point
it should be ready for an attempt on the GCC conversion). Given the good
progress being made there at present, I thus suggest we plan to compare
this conversion with one from reposurgeon (paying special attention to the
messiest parts of the repository, such as artifacts from cvs2svn
attempting to locate branchpoints), unless those last five goreposurgeon
test failures prove unexpectedly time-consuming to get resolved.
There are of course plenty of things to do relating to a git conversion
that do not depend on the particular choice of a converted repository -
such as writing git hooks and git versions of the maintainer-scripts
scripts that currently work with SVN, or working out a specific choice of
how to arrange annotated tags to allow "git describe" to give the sort of
monotonic version number some contributors want.
A reasonable starting point for hooks would be that they closely
approximate what the current SVN hooks do for commit mails to gcc-cvs and
for Bugzilla updates, as what the current hooks do is clearly OK at
present and we shouldn't need to entangle substantive changes to what the
hooks do with the actual conversion to git; we can always discuss changes
later.
--
Joseph S. Myers
joseph@codesourcery.com