Slash Boxes
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

use Perl Log In

Log In

[ Create a new account ]

Thursday August 28, 2008
03:44 PM

Mastering Perl sources now in Git

[ #37296 ]

I've moved my Mastering Perl repository from SVN to git (following this guide), and now I've put it on Github.

You can clone the repo with:

% git clone git://

Or you can browse it on github (which sometimes gives a server error, so just keep trying).

Github is popular with the Ruby folks, but we can't let them have all of the fun. I converted my CVS repos and put them there, and now I'm working through my SVN repos. (And, lazy web, is there a good way to fragment an SVN repo into many git repos? I have my main SourceForge account with most of my modules in the same repo, but now I want those to be in separate git repos, one per module).

And, now that I've looked at Ohloh again, I see that they support git repos.

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
More | Login | Reply
Loading... please wait.
  • Why did you choose git?

    • I'm not into the religious stuff and I'm content for people to use whatever works for them.

      First, Randal forced me to use git. He got into it very early, and at Stonehenge we use it for anything new. For the Mastering Perl stuff, Allison previously hosted a subversion repo for me on her personal box since she was the book editor, but she moved all of her stuff to a hosted solution. I had the repo sitting on my local box and wanted to make it public, so I changed it to git which I was already using.

      Second, I

      • I said I was only curious. I respect your opinion and you gave it. :-)

      • I've been moving my stuff to github as well. It has a nice interface without a lot of hassle.

        I wish it had some sort of issue tracker, though.
        Google Code *does*, and apparently, you can tell Google Code to advertise github as your repository.
        I may have to take advantage of that feature in the future, unless I find a better issue tracker.

  • Hi,

    do it as a two step process.

    First import the svn into git using git svn. Given that this is a one-shoot move to git, you should use the --no-metadata switch also.

    Then, from that inicial repo, clone one repo for each module and use the git filter-branch command.

    If you go to the man page here ( search for "git filter-branch --subdirectory-filter" and you should find the solution.

    I've used git svn several times, and git filter-branch a c

    life is short
    • Okay, that was pretty easy. Now I just have to figure out how to make the filtered repos smaller. I think they are still carrying around a lot of meta baggage because the filtered repo is still about 3/4 the size of the full repo, and that's pretty bad for a huge repo.

      Thanks :)