Slashdot Mirror


Git Adoption Soaring; Are There Good Migration Strategies?

Got To Get Me A Git writes "Distributed version control systems (DVCS) seem to be the next big thing for open source software development. Many projects have already adopted a DVCS and many others are in the process of migrating. There are a lot of major advantages to using a DVCS, but the task of migrating from one system to another appears to be a formidable challenge. The Perl Foundation's recent switch to Git took over a year to execute. The GNOME project is planning its own migration strategy right now after discovering that a significant majority of the project's developers favor Git. Perhaps some of the projects that are working on transitions from other mainstream version control systems can pool their resources and collaborate to make some standardized tools and migration best practices documentation. Does such a thing already exist? Are any folks out there in the Slashsphere working on migrating their own project or company to a DVCS? I'd appreciate some feedback from other readers about what works and what doesn't."

4 of 346 comments (clear)

  1. bzr vs. git? by Anonymous Coward · · Score: 0, Offtopic

    I always though bzr had the edge on git in terms of being a better DVCS. Is there a reason why the article seems to think that git is the default?

  2. HAY GUYS by Anonymous Coward · · Score: -1, Offtopic


    r MM MM MMNMMMM MMMMMMMMM MMMMMMMMMMMMMMMM MMMMMM MMMNM MM M Fuck your mother and your father
    r MrMrr'ro',oro',o',oro',o',oro',o',oro', ',oro',o',rrrrr@MM Fuck your mother and your father
    rMMrWrM'ro',oro',o'>>,r'ror`rr7MrXrM Fuck your mother and your father
    rM,rrrM'ro',oro',o', ro',o',oro',o',oro',or,r'ro',rrrrMrrBr0 Fuck your mother and your father
    rMrWrrM'ro',oro',o',oro',o',oro', ',oro',or,r'ro',rrrWMrr0rMX Fuck your mother and your father
    rM2rSrMr;r,rXi'ro',o o',o',oro',o',oro', ',oro',o',rrrM7rrii@ Fuck your mother and your father
    rMSr@MMrX0'ro',oro',o',rrrrSrrrrr;i'ro',oro',o',rr rrrrMMrrMrM Fuck your mother and your father
    rMWMMM'ror`rra0BMMMZo',or`rrXBrrSrrroMMMMMMMMMB'ro ',rrrMrrMrM Fuck your mother and your father
    rMMrMMrrrrMMMMM MMMMMMMMMMr'ror`r:MMMMMMMMMMMMMMMMMWrrrMMrMiS Fuck your mother and your father
    r MMM2rrMMMMM (o) MMMMMMMMMM rr XMMMMMMMMMMMMMMMMMMMMorBM:MX Fuck your mother and your father
    r MMMrrMMMMMMMM MMMMMMMMMMMMM r MMMMMMMMMMMMMMMMMMMMMMrrMMMM Fuck your mother and your father
    rMMZrrBMMMMMMMMMMMMMMMMMMMMMM r MMMMMMMMMMMMMMMMMMMMMBrrrrMM Fuck your mother and your father
    rMrrrrMMMMMMMMMMMMMMMMMMMMMMM r MMMMMMMMMMMMMMMMMMMMMWrWMrrM Fuck your mother and your father
    WMrrirMMMMMMMMMMMMMMMMMMMMMMM rM MMMMMMMMMMMMMMMMMMMM,rrrrrM0 Fuck your mother and your father
    MXrrrrMMMMMMMMMMMMMMMMMMMMMM'ror` MMMMMMMMMMMMMMMMMMM'ror`rMM Fuck your mother and your father
    MZrrrr7MMMMMMMMMMMMMMMMMMMM rrorZr MMMMMMMMMMMM MMMMMrrXrrrZM Fuck your mother and your father
    MMrrZrrMMMMMMMMMMMMMMMMMM; rrMMrMMr WMMMMMMMM (o) MMrrarrrrM0 Fuck your mother and your father
    rMrr,rrrrXMMMMMMMMMMMMM rrr:MMMrMMM:r MMMMMMMMM MMrrrr7rrrrM Fuck your mother and your father
    rMM'ro',rrrr,M0'ro',rrrrr,,MMMBrMMMMr,rrrrZMMM:rrr raWrrrrrMM Fuck your mother and your father
    r MrrrrriirXrrr7rrSr,2rrrrSMMMMrMMMM'ro',rrrrrr2:r'r o',rrrM Fuck your mother and your father
    r MM'ro',oro',or,r'ror`r8:MMMMMrMMMMMr;rr;iio',or,r' ror`rMM Fuck your mother and your father
    rr MM'ro',oro',o',rrrrrr;WMMMMMrMMMMMrM'ro',oro',o',r rroMM Fuck your mother and your father
    rrrr MMM'ro',oro',o',rrrrrMMMMMrMMMMM'ro',oro',o',rrrXM MM Fuck your mother and your father
    rrrr 0MMMMr'ror,r'ro',rrrrBMMM@rZMMM;'ror,r'ror`rraMMMM M Fuck your mother and your father
    'ror` MMMMMMrMr,rr;'ror,r'ror`ri'ror,r'ror`rirrrrMMMMaMa Fuck your mother and your father
    'ror` MrrBMMMMr2rZMrr@rrrrZ'ro',rrr,,rror'rrrMrr;M@rrrM Fuck your mother and your father
    'ror` MMrrrM2MMM8MrrrZrrrXMrrrX,rrrrMorrrrrrrMMMM@rrrrM Fuck your mother and your father
    'ror` MMrrrMrrrZMMMMMMMMMMMiMMMrrrrrWMSMMMMMMMrZMrrrrMM Fuck your mother and your father
    'ror`r MWrrMMrrWrrXrrrMrrriMaXMMMMMMBMrSrr7rr:rMMrrrrMX Fuck your mother and your father
    'ror`r MMrrXMM2MMrMrrrMrrr,rrrM' or`rrrrBraMBMrM2rrriM Fuck your mother and your father
    'ro',rr M2rrMrr@rrMMMMMMMMMr rMrrMorMMrZMZMMr;MMrrrrMM Fuck your mother and your father
    'ro',rrr MrrrMMM0rZrrrMr rMMB7MM2MMrMrrSrrrrrMWrrrrrM Fuck your mother and your father
    'ro',rrr MrrrrrSMMMMWSMr rrirrMrrrarMrrrM:MMBrSrrrrMM Fuck your mother and your father
    'ro',rrr MM'ro',rrr2XMMMWMMMM0MMMMMMMMMMMMrrrrrrrr2M Fuck your mother and your father
    'ro',rrrr MMr:'ro',rrrrrr;rrrrr8'ro',oro',o',rrrrMM Fuck your mother and your father
    'ro',rrrrr XMMM'ror`roaM'ror`rr, rrrr;;:'ror`rrMMM Fuck your mother and your father
    'ror,r'ro',rr WMM'ror,r' or`rBrrMrr rao',or`rMMMr Fuck your mother and your father
    'ro',oro',o',rr MMMr:rr,rrrrMorrXS2,rrrrrZMMMX Fuck your mother and your father
    'ro',oro',o',rrr rMMMZMMrrr;rrrrBrrrrrrMMMM Fuck your mother and your father
    'ro',oro',or,r'ror` irXS2MMMMMMB8ZMMMMX: Fuck your mother and your father
      and your father
    TROLLKORE HEAD, I'M IN YOUR BED and your father
    I'M FIZZY FIZZY WIZZY, I'M OFF MY HEAD and your father

    Filter error: Please use fewer 'junk' characterso
    Filter error: Please use fewer 'junk' characterso
    Filter error: Please use fewer 'junk' characterso
    Filter error: Please use fewer 'junk' characterso

  3. moD 0p by Anonymous Coward · · Score: -1, Offtopic

    OuT of bed 1n the but now they're

  4. Use cvs2svn for CVS repositories by shepmaster · · Score: 0, Offtopic

    Use cvs2svn to convert your existing CVS repositories.

    The tools that come with git for converting CVS to git do not work. You will see other posts about how git is different, such as how it manages commits versus files. CVS manages files, and doesn't track them well.

    It has no ideas of when a branch ends, and even when they start is a bit iffy. Add to that the fact that CVS lets you pick and choose random files to be on a branch, then you can really start to get into a strange state.

    For our CVS repository (goes back to 2001, we had 100's of branches, maybe 1000 tags), the git cvsimport tool placed code from our current development trunk into older versions. I'm sure you can see how bad that is.

    After getting burned by that, we turned to cvs2svn. It took a long time (8 hours) to convert, but it converted correctly, and you only ever have to do it once.

    My advice is to convert your repository, then check out random versions from both CVS and git, then run a diff on all the branches of importance. I wrote a script to do it for all branches and tags because I got burned the first time.