Skip to main content
Jump to: navigation, search

Platform-releng/Juno Git Migration Recipe

< Platform-releng
Revision as of 10:36, 13 June 2011 by (Talk | contribs) (Run cvs2git to do the conversion)

This is a modified version of the steps described by the CDT team in bug bug 316208

Recipe for test conversion for p2

Steps to reproduce:

Copy the existing repository to a temp location

mkdir ~/cvs; cd ~/cvs

cp /home/data/cvs/rt/org.eclipse.equinox.p2 .

Remove broken symlinks in the repo from all to the components we moved above

  find cvs/ -type l|xargs -n 1 rm

Note: This didn't apply to us.

Move old content into old and exclude old content from migration. Need to create exclude list, preliminary one is here here

Run cvs2git to do the conversion
 Get latest cvs2git:
  svn co --username=guest --password="" cvs2svn-trunk 

 .../cvs2svn/cvs2git --options=cvs2git.options

   (To do: Add options file link)

Import the cvs2git output into git

  cd /gitroot/p2
  mkdir org.eclipse.equinox.p2/org.eclipse.equinox.p2.git
  cd org.eclipse.equinox.p2/org.eclipse.equinox.p2.git
  git init
  cat ~/cvs2svn-tmp/git-blob.dat ~/cvs2svn-tmp/git-dump.dat | git fast-import

Move tags into place

 python ..../cvs2svn/contrib/   

Prune + Repack the repository

git prune
git repack -a -d --depth=250 --window=250
git gc --aggressive
git repack -a -d --depth=250 --window=250

Verify repo

 mkdir /tmp/compare-kmoir/
.../ --git .../cvs/tools/org.eclipse.cdt/ .../path_to_git_repo/ --tmp=/tmp/compare-kmoir/ --diff

Back to the top