This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

git on with it!


I think we're ready.  Finally.
To clone the latest, do this:

    git clone git://sources.redhat.com/git/glibc1.git

or browse it via:

    http://sources.redhat.com/git/gitweb.cgi?p=glibc1.git;a=summary

Some stats:
  commits on trunk: 16555 (down from 60k+ originally)

As a sanity check after the grafting, I listed commits per branch:

    $ for b in $(git br -a|sed s/..//|sort|grep -v 'master'); do
        printf '%4d %s\n' $(git rev-list master..$b|wc -l) $b; done
     207 fedora-2_3-branch
     411 fedora-2_5-branch
     554 fedora-branch
    1525 glibc-2-1-branch
     661 glibc-2-2-branch
    1161 glibc-2_0_x
       2 glibc-2_10-branch
     303 glibc-2_3-branch
     117 glibc-2_5-branch
       6 glibc-2_6-branch
       1 glibc-2_7-branch
       0 glibc-2_8-branch
       0 glibc-2_9-branch
     883 sparc-2_0_x-branch
       0 thomas-posix1996
Cloned the repo, and repeated in the clone.
Same numbers, but remotes/origin/-prefixed refs, as expected.

Frequency of commit "summary/subject" lines on master:

  $ git log --pretty=format:%s HEAD |sort|uniq -c|sort -nr
   7407 Update.
     72 *** empty log message ***
     49 Fix typo.
     39 Update
     32 Update from translation team.
     25 Regenerated: autoconf  configure.in
     17 Regenerated
     16 .
     13 typo
     13 Regenerated.
     12 Pretty printing.
     11 Updated.
     10 Fix typos.
     10 ..
     ...

I wish I'd seen the 7400 "Update" commits earlier.
It wouldn't be hard to drop each and hoist the first line
of the remainder (ignoring ChangeLog cruft, of course), but
it seems too late for that, now.

For the record, this is how I handled post-conversion clean-up and
branch/tag renaming:

    # Remove conversion cruft.
    git for-each-ref --format='%(refname)' refs/original/ \
      | xargs -n 1 git update-ref -d
    git reflog expire --expire=now --all
    git gc --prune=now

    # Rename all branches except master to have cvs/ prefix.
    for b in $(git br|sed s/..//|grep -v master); do
      git br -m "$b" "cvs/$b"
    done

    # Rename all tags to have cvs/ prefix.
    all_tags=$(git tag -l)
    for t in $(echo "$all_tags"); do
      git tag "cvs/$t" "$t"
    done
    git tag -d $(echo "$all_tags")

    git gc

Resulting size of .git/: 77MiB

I've pushed the result to glibc1.git.
In preparation for the switch, I've copied what is in glibc.git
(the old, incrementally-mirrored-from-cvs repo) into glibc2.git.

I'll move it all into place (glibc.git) in the next few hours.

Phew.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]