Re: TAP historical versions

2007-03-13 Thread Sam Vilain
Sam Vilain wrote:
 I just gave the cg- commands initially because I didn't want to write
 this git-core equivalent in public:
   mkdir perl
   cd perl
   git-init
   git-remote add catalyst git://git.catalyst.net.nz/perl.git
   git-config remote.catalyst.fetch \
  '+refs/heads/restorical:refs/remotes/restorical'
   git-fetch catalyst
   git-checkout -b master restorical

   

Shawn Pearce has pointed out this much more straightforward sequence:

  mkdir perl
  cd perl
  git init
  git remote add -t restorical -f catalyst \
   git://git.catalyst.net.nz/perl.git
  git checkout -b master catalyst/restorical

Sam.


Re: TAP historical versions

2007-03-12 Thread Dave Mitchell
On Sun, Mar 11, 2007 at 03:46:37PM -0700, Michael G Schwern wrote:
 The repo browser unfortunately only goes back 50 revisions.

It can display *any* 50 revisions; for example,

http://public.activestate.com/cgi-bin/perlbrowse/c/1

shows you changes 9951 - 1. Admittedly it could do with prev/next
links though.

-- 
Hofstadter's Law: It always takes longer than you expect, even when you
take into account Hofstadter's Law.


Re: TAP historical versions

2007-03-12 Thread Sam Vilain
Sam Vilain wrote:
 You can add them all as branches with that cg-branch-add command then
 suck them all down with a big cg-fetch command. Another option is to
 just grab the lot with git-clone.

Forgot to say, that's almost a 200MB download at the moment.

 Actually if you've got the lot, then this will crank up the graphical
 history browser showing just commits that changed that file:

gitk --all t/TEST
   

And here's the teaser for that ;-)

  http://utsl.gen.nz/git/gitk-on-tTEST.png

 Which is probably going to be more fun than wading through pages like this:

   
 http://git.catalyst.net.nz/gitweb2?p=perl.git;a=history;f=t/TEST;h=p4-perl;hb=p4-perl

 Sam.

   



Re: TAP historical versions

2007-03-12 Thread Sam Vilain
Michael G Schwern wrote:
 cg-branch-add p4-perl git://git.catalyst.net.nz/perl.git#p4-perl
 cg-fetch p4-perl
 cg-switch p4-perl
 
 cg-switch: refusing to switch to a remote branch - see README for lengthy
 explanation; use cg-seek to just quickly inspect it
   

Oops, yeah, my mistake.  cg-seek is what you need there; cogito won't
let you switch to that because it considers it a remote branch (ie, a
tracking branch - mirror path in svk terms).  'cg-status' shows these
with a R.

This is the cogito way to make a local branch based on a remote branch:

  cg-switch -r p4-perl somelocalname

git-log also accepts a revision to start from:

  git-log p4-perl t/TEST

To confound matters, the remote tracking has seen several revisions.

First, git-core just had a remotes file that specified which refs (ie,
branches) on the upstream side get converted to refs locally, and all
the branches were in the same namespace.  Files in .git/remotes/*

Then, cogito allowed branches to be remote branches, that it would
refuse to commit to, and display specially, with the cg-branch-*
commands to map to remote places.  Files in .git/branches/*

Recently (git 1.5+) git-core re-invented them in a more flexible and
different way (see git-remote, git-config --global color.branch auto
and git-branch -a -v).  Sections in .git/config

However, the only real side effect of this mess is ending up with junk
refs.  In general just ignore them, you'll see when it's safe to delete
them later when you get more familiar with the concept of the commit DAG.

I just gave the cg- commands initially because I didn't want to write
this git-core equivalent in public:

  mkdir perl
  cd perl
  git-init
  git-remote add catalyst git://git.catalyst.net.nz/perl.git
  git-config remote.catalyst.fetch \
 '+refs/heads/restorical:refs/remotes/restorical'
  git-fetch catalyst
  git-checkout -b master restorical

In terms of a tutorial... well, yeah, not sure.  I'm writing one that's
more of a working with projects still using SVN repositories with
git-svn tutorial which doesn't really cover this case very well. 
There's a guy doing lots of work on the git user manual, which by now is
getting quite complete.  The nice thing about that is that it ships with
git and shouldn't get stale like on-line tutorials do.

I should probably confess that my git training has included two long
talks from Martin Langhoff, and a 1½ hour internals demo from Linus at
LCA last year.  And of course, rigorous experimentation...

Sam


Re: TAP historical versions

2007-03-11 Thread Michael G Schwern
Sam Vilain wrote:
 Try this (after installing cogito):
 
   cg-clone git://git.catalyst.net.nz/perl.git#restorical
   git-log -p t/TEST

Thanks, but that only gets me up to August of 1996.  Where's the rest?


Re: TAP historical versions

2007-03-11 Thread Michael G Schwern
Sam Vilain wrote:
 Ah right, I assumed you'd just be interested in the pre-perforce stuff -

I could get it from Perforce but that would require access to the repo.
And, of course, using Perforce. *yuck*  The repo browser unfortunately
only goes back 50 revisions.


 that above download is about about 6-7MB, whereas the rest is over 100. 
 Note I am yet to import the 5.003_07 - 5.003_99? series and graft it
 underneath good old Change 17.  And the commit timestamps are all wrong.

That's in the works though?  Good, it would make me happy to see one grand
unified, publicly accessible trunk.


 If you grab the p4-perl branch, that's pretty much (sans importing
 bugs) blead;
 
 cg-branch-add p4-perl git://git.catalyst.net.nz/perl.git#p4-perl
 cg-fetch p4-perl
 cg-switch p4-perl
 git-log -p t/TEST

Closing my eyes and blindly pasting your commands.

So where's the recommended GIT tutorial?


Re: TAP historical versions

2007-03-11 Thread Michael G Schwern
Sam Vilain wrote:
 If you grab the p4-perl branch, that's pretty much (sans importing
 bugs) blead;
 
 cg-branch-add p4-perl git://git.catalyst.net.nz/perl.git#p4-perl
 cg-fetch p4-perl
 cg-switch p4-perl

cg-switch: refusing to switch to a remote branch - see README for lengthy
explanation; use cg-seek to just quickly inspect it

?