Project:Infrastructure/SvnGitMigration
From Gentoo Wiki
Jump to:navigation
Jump to:search
bug #513182, deadline 2014-06-21
Process
- In Gitweb, check if Git path is already taken: Collision or conversion done already?
- Get SVN store from server (Disable write access in conf/svnserver.conf!). idl0r might help out with a tarball. If non-one can help, dev-vcs/rsvndump can.
- Check layman for use of (sub paths of) that repository ("layman -L | fgrep svn | fgrep ......")
- Analyse the SVN store using dev-vcs/svneverever. You're interested in (1) the folders ever existing (especially trunk(s), branches, tags) and (2) the committer nick names (option --committers)
- In gitolite, Create repo "proj/..." with the active devs out of those past committers
- Get a svn2git identity map including (current and past) Gentoo devs and some known external SVN contributors (http://git.overlays.gentoo.org/gitweb/?p=proj/userinfo-scripts.git;a=summary)
- Write a svn2git rules file
- Run svn2git: svn2git --identity-map identity.txt --rules repo.txt --add-metadata --stats repo_svn
- Clone the output to have a friendly, non-bare repository. Do a git repack?
- Inspect result, correct mistakes, do another run until good enough. Tags and branches should "feel right". (If tags get complicated, may this helps: http://git.goodpoint.de/?p=git-move-tags-up.git;a=summary)
- Add target remote ("git remote add overlays-gentoo-org git+ssh://git@git.overlays.gentoo.org/proj/REPO.git") and push.
create repository autoepatch-bare
end repository
match /trunk/
repository autoepatch-bare
branch master
end match
Status
Person at it | SVN host | SVN path | Git path | History pushed | Extra review by | respositories.xml updated | Write access list done | Notes |
---|---|---|---|---|---|---|---|---|
sping | svn.g.o | adopt-a-dev | proj/adopt-a-dev | done | n/a | done (no one) | diox retired | |
sping | svn.g.o | autoepatch | proj/autoepatch | done | n/a | done | nightmorph retired | |
dastergon | svn.g.o | baselayout | proj/baselayout | done | done(vapier) | Known to be active( | ||
sping | svn.g.o | gentoo-dev-summary | proj/gentoo-dev-summary | done | n/a | done (no one) | jokey and welp both retired | |
sping | svn.g.o | gli | proj/gli | done (in part in the past) | n/a | done (@releng) | Git repository exists already
SVN has changes not in Git? (SVN latest 2008-07-28 (r1912), Git latest 2008-05-26) | |
sping | svn.g.o | hwdata | proj/hwdata | done (in the past) | n/a | n/a | Started off as a git-svn conversion. All 8 SVN revisions seem included. | |
sping | svn.g.o | kbase | proj/kbase | done | n/a | done (swift) | ||
sping | svn.g.o | livecd-tools | proj/livecd-tools | done (in the past) | n/a | n/a | Started off as a git-svn conversion. All 150 SVN revisions seem included. | |
mpagano | svn.g.o | linux-patches | proj/linux-patches | done | n/a | n/a | ||
vapier | svn.g.o | path-sandbox | proj/sandbox | done | done | n/a | n/a | known to be active |
n/a | svn.g.o | sandbox | n/a | wontfix | n/a | n/a | n/a | test repo; may be punted |
sping | svn.g.o | scire | proj/scire | done | Review wanted | done (blackace) | (agaffney, codeman, mdisney retired) | |
sping | svn.g.o | vps | proj/vps/baselayout-vserver + proj/vps/misc | done x2 | n/a | done (no one) | Details (chtekkm, hollow, phreak all retired) | |
dastergon | svn.overlays.g.o | dev/anant | dev/anant/plan9 + dev/anant/d | done | done | done(no one) | Multiple overlays at /d and /plan9 | |
dastergon | svn.overlays.g.o | dev/aross | dev/aross | done | done | done(no one) | Single overlay at /; aross retired | |
dastergon | svn.overlays.g.o | dev/bangert | dev/bangert | done | done | done(no one) | Single overlay at /; bangert retired | |
dastergon | svn.overlays.g.o | dev/beandog | dev/beandog | done | done | done(beandog) | Single overlay at /; | |
dastergon | svn.overlays.g.o | dev/chtekk | dev/chtekk | done(tcl-8.6) | done(noone) | done(no one) | Multiple overlays (/apache1-removal, /apps, /coda, /horde) and projects (/syscp (except /syscp/www-apps/syscp?), /vda, /versioncp) (1:1 migration, empty repo with a note that overlay has been moved to another place) | |
dastergon | svn.overlays.g.o | dev/coldwind | dev/coldwind | cantfix | Empty | |||
dastergon | svn.overlays.g.o | dev/dang | dev/dang/maintainer + dev/dang/user | done | n/a | done(dang) | One overlay at /maintainer, another at /user | |
dastergon | svn.overlays.g.o | dev/deathwing00 | dev/deathwing00 | done | done | done(deathwing00) | Single overlay at /; deathwing00 retired | |
dastergon | svn.overlays.g.o | dev/dertobi123 | dev/dertobi123 | done | done | done | Single overlay at /; dertobi123 retired | |
svn.overlays.g.o | dev/dirtyepic | dev/dirtyepic | wontfix | Kill it with fire. | ||||
dastergon | svn.overlays.g.o | dev/drizzt | dev/drizzt | done | done | done(no one) | Single overlay at /; drizzt retired | |
dastergon | svn.overlays.g.o | dev/genstef | dev/genstef | done | done | done(genstef) | Single overlay at /; genstef retired | |
dastergon | svn.overlays.g.o | dev/hattya | dev/hattya | done | done | done(hattya) | Single overlay at / | |
dastergon | svn.overlays.g.o | dev/hollow | dev/hollow | cantfix | Empty with a message "this repository is oboslete. the new repository is located at" | |||
dastergon | svn.overlays.g.o | dev/je_fro | dev/je_fro | done | done | done(je_fro) | Single overlay at /; je_fro retired | |
dastergon | svn.overlays.g.o | dev/johnm | dev/johnm | cantfix | Empty | |||
dastergon | svn.overlays.g.o | dev/jokey | dev/jokey | done | done | done(jokey) | jokey retired | |
dastergon | svn.overlays.g.o | dev/kevquinn | dev/kevquinn | done | done | done | Multiple overlays(1:1 migration, inactive, almost empty) | |
sping | svn.overlays.g.o | dev/liquidx | dev/liquidx | done | done | done (no one) | Single overlay at /; liquidx retired | |
sping | svn.overlays.g.o | dev/lu_zero | dev/lu_zero | done | done | done (lu_zero) | Single overlay at / | |
sping | svn.overlays.g.o | dev/mabi | dev/mabi | done | n/a | done (mabi) | Single overlay at / | |
dastergon | svn.overlays.g.o | dev/marineam | dev/marineam/misc, dev/marineam/xen | done(xen) and done(misc) | done | One overlay at /misc, another at /xen | ||
sping | svn.overlays.g.o | dev/masterdriverz | dev/masterdriverz | done | done | done (no one) | Single overlay at /; hawking and masterdriverz both retired, commiter vcover non-dev | |
dastergon | svn.overlays.g.o | dev/mescalinum | dev/mescalinum/abandonware,dev/mescalinum/tlc-8.6, dev/mescalinum/tcl-multislot | done(tcl-8.6) and done and done(abandonware) | done | done(no one) | One overlay at /abandonware, another at /tcl-8.6, a third at /tcl-multislot | |
dastergon | svn.overlays.g.o | dev/nichoj | dev/nichoj | done | done(no one) | Multiple overlays and projects(1:1 migration, inactive) | ||
sping | svn.overlays.g.o | dev/omp | dev/omp | done | n/a | done (i92guboj) | Single overlay at /; omp retired | |
dastergon | svn.overlays.g.o | dev/pauldv | dev/pauldv | done | done(pauldv) | Known to be active | ||
sping | svn.overlays.g.o | dev/philantrop | dev/philantrop | done | n/a | done (no one) | Single overlay at /trunk; philantrop retired | |
dastergon | svn.overlays.g.o | dev/phreak | dev/phreak | done | done(no one) | Multiple overlays and projects(1:1 migration, inactive repo) | ||
sping | svn.overlays.g.o | dev/pva | dev/pva | done | n/a | done (pva) | Single overlay at / | |
sping | svn.overlays.g.o | dev/radek | dev/radek | done | n/a | done (no one) | Single overlay at /radek-portage; radek retired | |
sping | svn.overlays.g.o | dev/rbrown | dev/rbrown | done | n/a | done (no one) | Single overlay at / (rbrown retired) | |
sping | svn.overlays.g.o | dev/rbu | dev/rbu/overlay + dev/rbu/misc | done x2 | done | done (no one) | Tool distfiles-indexer at /distindex Gentoo adaption of Fedora tool "FEver" at /fever | |
sping | svn.overlays.g.o | dev/seemant | dev/seemant | done | done | done (no one) | Single overlay at /; seemant retired | |
sping | svn.overlays.g.o | dev/suka | dev/suka | done | done | done (suka) | Single overlay at / | |
sping | svn.overlays.g.o | dev/trapni | dev/trapni/legato + dev/trapni/overlay | done x2 | done | done (no one) | Two overlays, one at /legato, the other at /overlay; trapni retired | |
vapier | svn.overlays.g.o | dev/vapier | proj/enlightenment | done | done | n/a | n/a | Known to be active |
sping | svn.overlays.g.o | dev/weeve | dev/weeve | done | n/a | done (no one) | Single overlay at / (weeve retired) | |
sping | svn.overlays.g.o | dev/wolf31o2 | dev/wolf31o2 | done | n/a | done (no one) | Single overlay at /; wolf31o2 retired | |
sping | svn.overlays.g.o | dev/wrobel | dev/wrobel/overlay + dev/wrobel/misc | 2x done | done | done (no one) | Details
http://git.overlays.gentoo.org/gitweb/?p=dev/wrobel/misc.git;a=summary | |
sping | svn.overlays.g.o | dev/zaheerm | dev/zaheerm | done | n/a | done (no one) | Single overlay at /; zaheerm retired | |
sping | svn.overlays.g.o | dev/zeypher | dev/zeypher | done | n/a | done (no one) | Single overlay at /; zeypher retired | |
dastergon | svn.overlays.g.o | dev/zzam | dev/zzam | done) | done(zzam) | Deleted overlay at /udev-bugs, active overlay at /; empty git repo created | ||
dastergon | svn.overlays.g.o | proj/alt | proj/alt | archived | done | done(abcd darkside fauli flameeyes genstef grobian haubi heroxbd mduft ottxor sping spb the_paya truedfx) | Known to be active(1:1 migration as requested, super heavy, archived in dev.gentoo.org/~dastergon/ ) | |
dastergon | svn.overlays.g.o | proj/artwork | proj/artwork | done | done | done(cla) | Single overlay at /; cla retired | |
dastergon | svn.overlays.g.o | proj/cell | proj/cell | done | done | done (lu_zero, ranger) | Single overlay at / | |
dastergon | svn.overlays.g.o | proj/docs-pl | proj/docs-pl | wontfix | Nothing in there but scattered old things | |||
dastergon | svn.overlays.g.o | proj/efika | proj/efika | done | done | done(jokey) | Single overlay at /; wolf31o2 and jokey retired | |
svn.overlays.g.o | proj/embedded | proj/embedded | done | TODO | old/unused; may be dropped | |||
dastergon | svn.overlays.g.o | proj/finnish | proj/finnish | done | done | done(flammie) | Single overlay at /trunk(1:1 migration) | |
dastergon | svn.overlays.g.o | proj/games | proj/games | done | done | done(no one) | Single overlay at / | |
toolchain | svn.overlays.g.o | proj/gcc-porting | wontfix | done(removed) | obsolete; all been merged back into main tree now | |||
dastergon | svn.overlays.g.o | proj/gnustep | proj/gnustep, proj/gnustep/prefix | done(overlay) and [http://git.overlays.gentoo.org/gitweb/?p=proj/gnustep/prefix.git;a=summary done(prefix)] | TODO | done(grobian, voyageur) | Known to be active(Overlay in /overlay and /prefix-overlay) skipped some scattered categories in / | |
dastergon | svn.overlays.g.o | proj/kernel-packages | proj/kernel-packages | wontfix | Single overlay at / (mpagano "We won't need to migrate that; t's super old") | |||
dastergon | svn.overlays.g.o | proj/kolab | proj/kolab | done | TODO | done(no one) | docs + overlay | |
dastergon | svn.overlays.g.o | proj/nx | proj/nx | done | done | done(genstef, voyageur) | Project at /testing; Skipped the others | |
n/a | svn.overlays.g.o | proj/perl | proj/perl | done | Single overlay at /perl-experimental and / before (Already moved to git: https://overlays.gentoo.org/svn/proj/perl/perl-experimental/moved_to_git.txt) | |||
dastergon | svn.overlays.g.o | proj/postgresql | proj/postgresql | done(postgresql/experimental) + done(postgresql/testing) | TODO | done(dev-zero) | Two different overlays in /experimental and /testing | |
dastergon | svn.overlays.g.o | proj/powerpc | proj/powerpc | done | done | done(ranger) | Single overlay at / | |
dastergon | svn.overlays.g.o | proj/rox | proj/rox | done | done | done(lack) | Single overlay at /trunk/overlay | |
n/a | svn.overlays.g.o | proj/ruby | proj/ruby | done | n/a | n/a | n/a | <mrueg> sping: wrt svn.g.o proj/ruby does not need to be migrated, it can be removed. |
n/a | svn.overlays.g.o | proj/science | proj/science | done | n/a | done | done | Justin Lecher: "Can be dropped as it is already on git and actively used." |
dastergon | svn.overlays.g.o | proj/security | proj/security | done | done(a3li, keytoaster, asym, craig, falco, py, rbu, vorlon) | Single project at / | ||
vapier | svn.overlays.g.o | proj/toolchain | proj/toolchain | done (in the past) | done | done | done (rhill vapier) | Known to be active |
sping | svn.overlays.g.o | proj/vdr | proj/vdr/devel + proj/vdr/testing |
done x2 | done x2 | done (idl0r, hd_brummy, zzam) | Details Known to be active | |
sping | svn.overlays.g.o | proj/vps | proj/vps/overlay | done | done | done (no one) | Single overlay at /; chtekk, hollow, phreak all retired | |
dastergon | svn.overlays.g.o | proj/webapps | proj/webapps-experimental | done | done | done(blueness, cryos, pva) | Added docs + experimental overlay in one repo | |
dastergon | svn.overlays.g.o | proj/xen | proj/xen | done | done | done(alexxy,rbu) | Project at /patches/{trunk,tags}, single overlay at /overlay and / (/patches and /overlay in one repo, skipped minor categories) project inactive |