> On Jul 22, 2019, at 12:05 PM, Maxim Kuvyrkov <maxim.kuvyr...@linaro.org> 
> wrote:
> 
...
>>>> As far as GCC conversion goes, below is what I plan to do and what not to 
>>>> do.  This is based on comments from everyone in this thread:
>>>> 
>>>> 1. Construct GCC's git repo from SVN using same settings as current git 
>>>> mirror.
>>>> 2. Compare the resulting git repo with current GCC mirror -- they should 
>>>> match on the commit hash level for trunk, branches/gcc-*-branch, and other 
>>>> "normal" branches.
>>>> 3. Investigate any differences between converted GCC repo and current GCC 
>>>> mirror. These can be due to bugs in git-svn or other misconfigurations.
>>>> 4. Import git-only branches from current GCC mirror.
>>>> 5. Publish this "raw" repo for community to sanity-check its contents.
>>> 
>>> Why not start from the current mirror?  Perhaps a mirror of the mirror?
>> 
>> To check that git-svn is self-consistent and generates same commits now as 
>> it was several years ago when you setup the current mirror.  
> 
> Unfortunately, current mirror does not and could not account for rewrites of 
> SVN commit log messages.  For trunk the histories of diverge in 2008 due to 
> commit message change of r138154.  This is not a single occurrence; I've 
> compared histories only of trunk and gcc-6-branch, and both had commit 
> message change (for gcc-6-branch see r259978).
> 
> It's up to the community is to weigh pros and cons of re-using existing GCC 
> mirror as conversion base vs regenerating history from scratch:
> 
> Pros of using GCC mirror:
> + No need to rebase public git-only branches
> + No need to rebase private branches
> + No need to rebase current clones, checkouts, work-in-progress trees
> 
> Cons of using GCC mirror:
> - Poor author / committer IDs (this breaks patch statistics software)
> - Several commit messages will not be the current "fixed" version
> 
> Thoughts?

Ping?

Meanwhile, status update:

1. GitHub blocked https://github.com/maxim-kuvyrkov/gcc/ due to excessive 
resource usage.  I've asked them to unblock and explained why pushes are as big 
as they are.

2. I'm uploading to https://git.linaro.org/people/maxim.kuvyrkov/gcc.git/ for 
now.

3. Conversion is now feature-complete.  The scripts re-write author and 
committer fields, as well as create proper git tags.

4. "Raw" version of repository is available under refs/raw/*.

5. refs/raw/* are not expected to change.

6. refs/heads/* and refs/tags/* might change due to author/committer name fixes 
and improvements.

Please scrutinize the repo and let me know of any artifacts.

--
Maxim Kuvyrkov
www.linaro.org



Reply via email to