<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    On 10/03/2012 21:46, Maciej Stachowiak wrote:<br>
    <blockquote
      cite="mid:31439890-B2BC-4BA7-8C08-AE884E23D522@apple.com"
      type="cite">
      <div><br>
      </div>
      <div>
        <div>In my opinion, the level of SVN use shown in both surveys
          indicates to me that we should probably keep supporting it,
          unless most of the SVN users would want to switch to Git. In
          particular, the second survey so far is showing that SVN use
          is somewhat higher among committers and reviewers than among
          the general population.</div>
      </div>
    </blockquote>
    <br>
    This raises an interesting point.<br>
    <br>
    The repository at git.webkit.org is not so great to work with as a
    committer / reviewer, and as Mark points out it's not too friendly
    on the servers either.<br>
    <br>
    As an incremental approach, it might be a good idea to first resolve
    some of the issues in the mirror, including its layout and usability
    vs. SVN.<br>
    <br>
    Without this work being done, the benefit of git over svn is not so
    clear to me.<br>
    <br>
    The way I see it, a better mirror would address:<br>
    <br>
    <b>ChangeLogs</b><br>
    <br>
    The ChangeLog entries in the git history mean every local merge,
    revert or cherry pick is non-trivial, so you get an ugly non-linear
    history whether or not you use a tool to auto-resolve ChangeLog
    conflicts.<br>
    <br>
    Possible solution would be to do a new migration where the ChangeLog
    entries are folded into the commit message the files themselves are
    eliminated from the history, as if they never existed.<br>
    <br>
    Maybe keep the original ChangeLog in an overlay branch for
    posterity, since these files are sometimes hand-edited after the
    fact.<br>
    <br>
    <b>Author Names<br>
      <br>
    </b>The committer names don't have the full author name in the git
    mirror right now, just an SVN id. This info could be extracted out
    of a database or the ChangeLog message if one exists, during import.
    People switch companies and email addresses over time, so that would
    have to be accounted for.<br>
    <br>
    This could go some way to alleviating Oliver's concern about
    inflation in reviewer / committer population by corollary:<br>
    <br>
    If the history is transformed to identify the author of an external
    contribution in cases where the patch is landed by a reviewer or
    <a class="moz-txt-link-abbreviated" href="mailto:commit-queue@webkit.org">commit-queue@webkit.org</a>, these guys would see their name next to
    their work and get credited on places like Github and Ohloh.<br>
    <br>
    Would result in less pressure amongst casual contributors to get
    commit access, especially for those who care about the 'creds' or
    are doing it to improve their CV to get a pay rise.<br>
    <br>
    <b>Layout and repo size<br>
    </b><br>
    The git repository with full history is enormous.<br>
    <br>
    I don't really need the full history of every pixel test result for
    every port, ever, including long-dead ports, and likewise don't
    really want to pull it every time the expectations get updated.<br>
    <br>
    It's not so much about disk space (everyone has plenty these days).<br>
    <br>
    The bigger problem is that <tt>git grep </tt>and <tt>git pickaxe</tt>
    search through local git history is so slow you actually end up
    having a better experience using the search feature on Trac. One
    less benefit over SVN.<br>
    <br>
    A proposal (or even better, proof of concept) for git repository
    layout where the 'heavy' generated paths are split out into git
    submodules separate from the source code would make me feel more
    comfortable with the whole idea. Also, should be possible to do a
    shallow clone of these yet still be able to commit and push back
    upstream (if git supports this, git experts?)<br>
    <br>
    <br>
    I did some of the early WebKit git tooling but to be honest this is
    a lot of work for someone to take on. But seeing some of the energy
    in the debate, someone might be willing to have a go.<br>
    <br>
    I do think that addressing these issues before advocating a switch
    would strengthen the case, at least with reviewers who had a mixed
    experience like mine.<br>
    <br>
    Regards,<br>
    Alp<br>
    <br>
  </body>
</html>