Csound Csound-dev Csound-tekno Search About

[Cs-dev] CVS to Git

Date2012-08-10 09:29
FromAnthony Kozar
Subject[Cs-dev] CVS to Git
Hello all!

I hope everyone is doing very well here -- it seems like the Csound
community is as active as ever!
  
The Bol Processor dev team (also hosted on SF) is currently looking at
switching from CVS to Git and since the Csound project has already done so,
I thought I'd ask for some advice.

How did you go about it?  Do you have to manually "git cvsimport" from the
CVS repository and then push to a new, empty Git repo?  Or does SF have a
migration tool?  (I haven't find one yet)  Or can you have SF support do it?

Do you have any tips on how to avoid problems during the switch?

Thanks very much!!

Anthony

-- 
Anthony Kozar
mailing-lists-1001 AT anthonykozar DOT net
http://anthonykozar.net/


------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net

Date2012-08-10 15:23
FromFelipe Sateler
SubjectRe: [Cs-dev] CVS to Git
AttachmentsNone  None  
Hi Anthony,

AFAIK, SF doesn't have a migration tool. In csound we did it manually, but it's not much work anyways. Tips from when we did this:

1. Make a local copy of the cvs repository (sf provides an rsync service for cvs repos if I recall correctly). Since the migration needs to go over all of the commits, and it is possible you will have to do it more than once due to errors, it is very advisable to have a local copy.

2. Compile a map of sf logins -> name <email> for all contributors. Cvs log and the local copy are your friends here.

3. Use cvsimport. 

4. Since in git every checkout is a full repository, accidentally commiting files is much more harmful than in cvs. Binary files can be very annoying and cause the repository to bloat. At [1] is a script that finds large files that no longer are in the HEAD. Then you can use git-filter-branch to remove them from the history, thus making the repository smaller.

5. Push master (and any other interesting branches) to the empty repository sf creates.


It is of course advisable to reserve a day for doing the migration where no dev actually commits to cvs, to avoid losing commits.


[1]  http://stackoverflow.com/questions/298314/find-files-in-git-repo-over-x-megabytes-that-dont-exist-in-head 

On Fri, Aug 10, 2012 at 4:29 AM, Anthony Kozar <mailing-lists-1001@anthonykozar.net> wrote:
Hello all!

I hope everyone is doing very well here -- it seems like the Csound
community is as active as ever!

The Bol Processor dev team (also hosted on SF) is currently looking at
switching from CVS to Git and since the Csound project has already done so,
I thought I'd ask for some advice.

How did you go about it?  Do you have to manually "git cvsimport" from the
CVS repository and then push to a new, empty Git repo?  Or does SF have a
migration tool?  (I haven't find one yet)  Or can you have SF support do it?

Do you have any tips on how to avoid problems during the switch?

Thanks very much!!

Anthony

--
Anthony Kozar
mailing-lists-1001 AT anthonykozar DOT net
http://anthonykozar.net/


------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/csound-devel



--

Saludos,
Felipe Sateler

Date2012-08-11 02:25
FromAnthony Kozar
SubjectRe: [Cs-dev] CVS to Git
Thank you very much, Felipe, for the detailed response!!

I will pass this information on to our team and hope that we will have a
smooth migration thanks to your advice and help ^_^

Many thanks,

Anthony

Felipe Sateler wrote on 8/10/12 10:23 AM:

> Hi Anthony,
> 
> AFAIK, SF doesn't have a migration tool. In csound we did it manually, but
> it's not much work anyways. Tips from when we did this:
> 
> 1. Make a local copy of the cvs repository (sf provides an rsync service
> for cvs repos if I recall correctly). Since the migration needs to go over
> all of the commits, and it is possible you will have to do it more than
> once due to errors, it is very advisable to have a local copy.
> 
> 2. Compile a map of sf logins -> name  for all contributors. Cvs log
> and the local copy are your friends here.
> 
> 3. Use cvsimport.
> 
> 4. Since in git every checkout is a full repository, accidentally commiting
> files is much more harmful than in cvs. Binary files can be very annoying
> and cause the repository to bloat. At [1] is a script that finds large
> files that no longer are in the HEAD. Then you can use git-filter-branch to
> remove them from the history, thus making the repository smaller.
> 
> 5. Push master (and any other interesting branches) to the empty repository
> sf creates.
> 
> 
> It is of course advisable to reserve a day for doing the migration where no
> dev actually commits to cvs, to avoid losing commits.
> 
> 
> [1]
> http://stackoverflow.com/questions/298314/find-files-in-git-repo-over-x-megaby
> tes-that-dont-exist-in-head
> 
> 
> On Fri, Aug 10, 2012 at 4:29 AM, Anthony Kozar <
> mailing-lists-1001@anthonykozar.net> wrote:
> 
>> Hello all!
>> 
>> I hope everyone is doing very well here -- it seems like the Csound
>> community is as active as ever!
>> 
>> The Bol Processor dev team (also hosted on SF) is currently looking at
>> switching from CVS to Git and since the Csound project has already done so,
>> I thought I'd ask for some advice.
>> 
>> How did you go about it?  Do you have to manually "git cvsimport" from the
>> CVS repository and then push to a new, empty Git repo?  Or does SF have a
>> migration tool?  (I haven't find one yet)  Or can you have SF support do
>> it?
>> 
>> Do you have any tips on how to avoid problems during the switch?
>> 
>> Thanks very much!!
>> 
>> Anthony
>> 
>> --
>> Anthony Kozar
>> mailing-lists-1001 AT anthonykozar DOT net
>> http://anthonykozar.net/
>> 
>> 
>> 
>> 
----------------------------------------------------------------------------->>
-
>> Live Security Virtual Conference
>> Exclusive live event will cover all the ways today's security and
>> threat landscape has changed and how IT managers can respond. Discussions
>> will include endpoint security, mobile security and the latest in malware
>> threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
>> _______________________________________________
>> Csound-devel mailing list
>> Csound-devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/csound-devel
>> 
> 
> 


------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net