Re: Git

2009-11-10 Thread Ed W

Hi

Bit late, but this may be helpful if you want to run your own repo 
rather than using an outsourced site (github, etc)


http://github.com/sitaramc/gitolite

Then chuck up gitweb for the public web interface (or one of the many 
others)


Hello, Guy.  Do you have experience recovering a git clone from years 
of historical mistakes in other version control systems?  I could 
really use that right now.


Fundamentally you have "git rebase -i" and gui tools equivalents

However, bear in mind that converting to git basically means just 
checking out each revision in your original vcs, then copying the state 
to the git repo and committing that change.  Any import script will just 
be a wrapper around that basic process and so you can write your own, do 
it manually, etc


Currently the big hurdle moving to git is repairing damage caused by 
years of newbie mistakes in RCS, CVS, and especially Subversion.  


Funny you say that - one of the things I like about git is that I find 
myself checking in 5 small changes with good comments versus 1 large 
commit with a poor comment when I used SVN.  I tended to use svn more 
like a kind of "snapshot" system and git I use more like a historical 
change record...


git-svn clone puts all the release tags up through 1.003 on the master 
branch.  Release tags after 1.003 (through the present) are on a 
different branch.  I haven't learned why trunk (therefore Master) 
doesn't represent the most recent changes.


My guess is that there was a fork here and you have one of more commits 
on the master branch which aren't in the 1.003 branch?


I would have thought running "git cherry" would show up differences and 
then switch to the master branch and do a git merge from the 1.003 
branch to fix it?  (Incidently, don't really alter the real branches, 
instead create a "wip" branch from master, then merge that with 1.003, 
if there are any problems you can blow it away.  Then when it's working 
simply rename master (or delete it) and rename your wip branch to master)


POE::Test::Loops and POE::Loop::{Event,Gtk,Tk} were created by moving 
files from trunk/poe to other directories in trunk.  This seems to 
have broken the files' revision chains.  I'd like to regain that old 
history.  I'm considering cloning the git repository up until the 
diversion point, rebasing a broken branch onto the clone, and then 
deleting all the files the project doesn't need.


This sounds sane - actually it should be much easier to do this than you 
think in git.  First import everything, then remember every commit can 
be used as a branch name, so just "git checkout a3354b1" and there you 
go - right back at that old commit.  Make it a proper named branch, 
mangle the repo to your hearts content and then merge in all the rest of 
the changes from the original branch.  If you want to tweak any commits 
then simply use "git rebase -i" and you can then juggle around the order 
of patches, split one patch to be many patches, merge patches to be a 
single change, etc. Always do all your work in a separate branch so that 
you can blow it away if you don't like it


Also remember that git cherry is incredibly powerful for finding 
unmerged changes.  It will often even work through file renames and 
large cut'n'paste changes (cool!)


I didn't read the original thread, so no idea if this is actually 
helpful... Sorry


Good luck

Ed W


Re: Git

2009-10-26 Thread Guy Hulbert
On Sun, 2009-25-10 at 19:30 +, Joel Bernstein wrote:
> Good luck in your POE adventures!
> 
> /joel 

thanks for the advice ... once i free some time, I have a specific
project in mind ... based on what i've read so far, poe may be ideal

-- 
--gh




Re: Git

2009-10-26 Thread Guy Hulbert
On Mon, 2009-26-10 at 19:36 +0100, Olivier Mengué wrote:
> And if your reason to not want to try IRC is because you have to
> install
> software 

started building gnu stuff ca 1990 ... brain bandwidth is the limitation

-- 
--gh




Re: Git

2009-10-26 Thread Andreas Altergott
Hi,

On Sun, 2009-10-25 at 19:30 +, Joel Bernstein wrote:
> Actually, these are crucial times - as a  
> beginner in POE you're uniquely placed to reflect on where and
> whether  
> the documentation is adequate, appropriate, well structured and so on.

My biggest problems while getting started was to actually understand how
to exchange data between different sessions.  I was sticking to the idea
that each session is something like an own process.  Thus not even
thought about the usage of global variables.  Don't know though if this
is really important to be mentioned in a documentation.  Actually this
should be self explaining.


Regards,
Andreas


signature.asc
Description: This is a digitally signed message part


Re: Git

2009-10-26 Thread Olivier Mengué
2009/10/25 Joel Bernstein 

>
> On 25 Oct 2009, at 19:19, Guy Hulbert wrote:
>
>  On Sun, 2009-25-10 at 11:23 -0600, chris fedde wrote:
>>
>>> you might also consider hanging out on irc.perl.org#poe.  Most of the
>>> active developers frequent that channel.
>>>
>>
>> Thanks for letting me know.  I have enough bad habits already that I
>> have not yet had time to master irc ... but if lurking here is fruitless
>> then perhaps I'll have to consider it.
>>
>
> It's not a given. #poe isn't really a chat channel, although some goes on.
> I can understand avoiding IRC as it has the potential to be a distracting
> time-sink but (for me, anyway) it's a much more gratifying and interactive
> way to get in contact with developers (both of POE, and people using POE)
> than the list. You'll find that the learning curve is trivial, and the
> rewards considerable.


And if your reason to not want to try IRC is because you have to install
software, just use this web gateway:
http://widget.mibbit.com/?server=irc.perl.org&channel=%23poe&noServerTab=true&noServerNotices=true&noServerMotd=true&autoConnect=true

Olivier.


Re: Git

2009-10-26 Thread Joel Bernstein


On 25 Oct 2009, at 19:19, Guy Hulbert wrote:


On Sun, 2009-25-10 at 11:23 -0600, chris fedde wrote:

you might also consider hanging out on irc.perl.org#poe.  Most of the
active developers frequent that channel.


Thanks for letting me know.  I have enough bad habits already that I
have not yet had time to master irc ... but if lurking here is  
fruitless

then perhaps I'll have to consider it.


It's not a given. #poe isn't really a chat channel, although some goes  
on. I can understand avoiding IRC as it has the potential to be a  
distracting time-sink but (for me, anyway) it's a much more gratifying  
and interactive way to get in contact with developers (both of POE,  
and people using POE) than the list. You'll find that the learning  
curve is trivial, and the rewards considerable.


I see myself as a POE user before I'd wade in to development.   
However,

besides git, I am interested in documentation.  I spent a few minutes
browsing what's already there and it was much less than I expected  
based

on my first impression from the website.


Part of the issue is that POE is largely written by people who know it  
inside and out. These are the same people who, by and large, produce  
its documentation. The point being that they don't necessarily refer  
to the documentation very much, so aren't in a particularly good  
position to judge whether the level, quantity, quality etc of  
documentation is adequate.


I looked through some of the offsite material as well.  Everything  
that

exists seems to be useful and well-written.

It will be a few months before I have much time for learning but  
lurking

here will help to become familiar with the project.


This is a relatively low-traffic list (see the archives) but you  
definitely *can* help. Actually, these are crucial times - as a  
beginner in POE you're uniquely placed to reflect on where and whether  
the documentation is adequate, appropriate, well structured and so on.  
Your feedback and contributions now (for example, doc patches) are  
valuable, not least because they're based on recent, crystal-clear  
experiences. Your feedback is welcome and I hope that where the  
documentation doesn't explain stuff clearly you are able to point this  
out. Providing doc patches is great, but even just sticking your hand  
up and saying that you didn't understand something provides useful  
colour. Especially if having had it explained (on-list or on IRC) you  
then turn the information into better documentation, to help others as  
you were helped.


I hope this didn't sound lecturing. I'm sure you can understand how  
the best person to document a feature (or to say 'this should go  
here') is the person who's just hard-won the information. Your  
learning experiences can and should be valuable to others.


Good luck in your POE adventures!

/joel


Re: Git

2009-10-25 Thread Olivier Mengué
2009/10/25 Rocco Caputo 

> Hello, Guy.  Do you have experience recovering a git clone from years of
> historical mistakes in other version control systems?  I could really use
> that right now.
>
>

> Currently the big hurdle moving to git is repairing damage caused by years
> of newbie mistakes in RCS, CVS, and especially Subversion.  While the
> current repository looks like a standard Subversion layout, it's not so
> historically.  git-svn clone does its best, but the results are a mess.
>

You should ask Philippe Bruhat (BooK), an other french Perl developer and a
friend. At the latest OSDC.fr he has shown me his work on rewriting the
history of a Git repository to rewrite an other one.
He wrote Perl tools for that task :
http://search.cpan.org/dist/Git-FastExport/
It appears he has extensively studied the problems of how an history is
"right" and he wrote an extensive test suite for git-stitch-repo.


Olivier.


Re: Git

2009-10-25 Thread Guy Hulbert
On Sun, 2009-25-10 at 17:38 -0400, Rocco Caputo wrote:
> Hello, Guy.  Do you have experience recovering a git clone from years  
> of historical mistakes in other version control systems?  I could 

Sadly, no.

I believe there are other projects, which have had to manually fix
things but I can't remember which one(s).  Ask Bjorn Hansen (qpsmtpd)
spent a few months using git and at least several weeks doing his
migration.  If you look at the mailing list (it's on perl.org) you
should be able to find out if he did anything special.

I recently discovered that "subproject support" is in all the current
debian versions of git.  I had thought it was later than 1.6.0 but it's
in 1.5.3, iirc.  You should look at that.  It's quite simple.  I intend
to play with it to see how flexible it is ... I had been
using .git/info/exclude to fake it.

You will have to set up the subprojects at the start though.  However it
may ease your patching by making on giant problem into several smaller
ones.

>  
> really use that right now.

[snip]
>   I'd like to regain that old  
> history.  I'm considering cloning the git repository up until the  
> diversion point, rebasing a broken branch onto the clone, and then  
> deleting all the files the project doesn't need.

That sounds about right.

-- 
--gh




Re: Git

2009-10-25 Thread Rocco Caputo
Hello, Guy.  Do you have experience recovering a git clone from years  
of historical mistakes in other version control systems?  I could  
really use that right now.


Currently the big hurdle moving to git is repairing damage caused by  
years of newbie mistakes in RCS, CVS, and especially Subversion.   
While the current repository looks like a standard Subversion layout,  
it's not so historically.  git-svn clone does its best, but the  
results are a mess.


Specific problems:

git-svn clone puts all the release tags up through 1.003 on the master  
branch.  Release tags after 1.003 (through the present) are on a  
different branch.  I haven't learned why trunk (therefore Master)  
doesn't represent the most recent changes.


POE::Test::Loops and POE::Loop::{Event,Gtk,Tk} were created by moving  
files from trunk/poe to other directories in trunk.  This seems to  
have broken the files' revision chains.  I'd like to regain that old  
history.  I'm considering cloning the git repository up until the  
diversion point, rebasing a broken branch onto the clone, and then  
deleting all the files the project doesn't need.


Yuval Kogman's fine git-svn-abandon-fix-refs does wonders to recover  
branches and tags, but it relies on git-svn clone creating sane  
branches and remotes.


--
Rocco Caputo - rcap...@pobox.com


On Oct 25, 2009, at 09:12, Guy Hulbert wrote:


I discovered POE today due to a WNPP email to the debian-perl list.

I'm very interest in it so I will be lurking here for now (mostly
deleting everything that comes through after glancing at it).

BUT.

There was some stuff about Git in the "how to help" section.

I have been using perl and git together for almost two years now.  I  
am

implementing a git-based web-site management scheme for a client.  We
have tried svn and hg a bit as well but TortoiseGit suddenly reached a
stage where using anything else seemed pointless.

I can recommend git-hub highly (though I don't have much there).

So if there's anything I can do (I've looked closely at and played  
with

git/hg and git/svn conversions) let me know.

The main problem I have run into is that git (deliberately) has no
locks.  So using a central repository is a cultural more than a
technical problem and more of a problem in a business setting.

--
--gh






Re: Git

2009-10-25 Thread Guy Hulbert
On Sun, 2009-25-10 at 11:23 -0600, chris fedde wrote:
> you might also consider hanging out on irc.perl.org#poe.  Most of the
> active developers frequent that channel.

Chris.

Thanks for letting me know.  I have enough bad habits already that I
have not yet had time to master irc ... but if lurking here is fruitless
then perhaps I'll have to consider it.

I see myself as a POE user before I'd wade in to development.  However,
besides git, I am interested in documentation.  I spent a few minutes
browsing what's already there and it was much less than I expected based
on my first impression from the website.

I looked through some of the offsite material as well.  Everything that
exists seems to be useful and well-written.

It will be a few months before I have much time for learning but lurking
here will help to become familiar with the project.

-- 
--gh




Re: Git

2009-10-25 Thread chris fedde
you might also consider hanging out on irc.perl.org#poe.  Most of the
active developers frequent that channel.

On Sun, Oct 25, 2009 at 7:12 AM, Guy Hulbert  wrote:
> I discovered POE today due to a WNPP email to the debian-perl list.
>
> I'm very interest in it so I will be lurking here for now (mostly
> deleting everything that comes through after glancing at it).
>
> BUT.
>
> There was some stuff about Git in the "how to help" section.
>
> I have been using perl and git together for almost two years now.  I am
> implementing a git-based web-site management scheme for a client.  We
> have tried svn and hg a bit as well but TortoiseGit suddenly reached a
> stage where using anything else seemed pointless.
>
> I can recommend git-hub highly (though I don't have much there).
>
> So if there's anything I can do (I've looked closely at and played with
> git/hg and git/svn conversions) let me know.
>
> The main problem I have run into is that git (deliberately) has no
> locks.  So using a central repository is a cultural more than a
> technical problem and more of a problem in a business setting.
>
> --
> --gh
>
>
>