[Mesa-dev] [Mesa3d-dev] Separate demos repository

Eric Anholt eric at anholt.net
Thu May 20 20:12:13 PDT 2010


On Thu, 20 May 2010 15:45:00 -0400, Kristian Høgsberg <krh at bitplanet.net> wrote:
> On Thu, May 20, 2010 at 3:18 PM, Eric Anholt <eric at anholt.net> wrote:
> > On Wed, 28 Apr 2010 11:00:45 +0000, José Fonseca <jfonseca at vmware.com> wrote:
> >> Ping.
> >>
> >> Could someone with administrative rights on fdo please make an empty
> >> git://anongit.freedesktop.org/mesa/demos repos, so that we can push this
> >> branch into it?
> >>
> >> Jose
> >
> > Sorry for the delay.  I wanted to get a few things done right when
> > making the new repo:
> >
> > 1) Don't include all of the Mesa history to keep repo size down.
> > 2) Keep history of the changes to the demos so annotate works.
> > 3) Move the demos to src/ so people just coming to the project see a
> >   normal-looking tree.
> >
> > This sure sounded easy with git-filter-branch.  We'd done something like
> > this with git-split for xcb, and git-filter-branch looked basically like
> > git-split but with more options.  The ugly part is that the tree-filter
> > takes a very long time, but git mv (unlike git rm) requires a
> > checked-out tree so you can't index-filter it.  Here's how the history
> > I've pushed came about.  I started with:
> >
> > commit 1391db428fe7b8f3d1c078da98dc1a231b54347f
> > Author: Wiktor Janas <wixorpeek at gmail.com>
> > Date:   Tue May 4 19:50:26 2010 +0200
> >
> >    u_blitter: fix creating fragment shaders
> >
> >    See FDO bug #27887.
> >
> >    Signed-off-by: Marek Olšák <maraeo at gmail.com>
> >
> > And then:
> >
> > # Remove everything in src/
> > git filter-branch --index-filter "git rm -rf --cached src" HEAD
> > # Remove all the do-nothing commits that now exist
> > git filter-branch --prune-empty HEAD
> > # Remove the nouveau import commit that was now empty, and confused the next filter
> > git filter-branch --parent-filter "sed 's|-p d57c2aff039d2a1422d0bc4d8e2b850c33d7e95c||'" HEAD
> > # Now actually move progs/ to src/
> > git filter-branch -f --index-filter \
> >    'git ls-files -s | sed "s-\tprogs/-\tsrc/-" |
> >         GIT_INDEX_FILE=$GIT_INDEX_FILE.new \
> >         git update-index --index-info &&
> >         mv $GIT_INDEX_FILE.new $GIT_INDEX_FILE' HEAD
> >
> > Yuck.
> >
> > Anyway, that resulting tree plus the changes I had in the other tree
> > rebased on it is now pushed to:
> >
> > git+ssh://git.freedesktop.org/git/mesa/demos
> >
> > I think commit messages are hooked up, too.
> 
> Very nice... though, shoudn't we also drop the docs, doxygen, include
> and configs subdirectories?

Yeah, probably.  I'm calling it a night at this point though.  Also
fixed up the generated Makefile in revision control, pulled in the
changes from Mesa master that weren't in (except for the last cygwin
fix, and getprocaddress still needs work).

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20100520/b02b684e/attachment.pgp>


More information about the mesa-dev mailing list