tiistai 7. huhtikuuta 2015

Versionhallintaa 2, SVN -> Git

SVN to Git migrate

Viimeksi kirjoittelin TFS:stä Gitiin siirtymisestä ja nyt on projektina Subversionista (SVN) siirtäminen. Minulla oli asennettuna Windowsiin TortoiseGit ja siitä löytyi Git clone -työkalu, jonka avulla saa tuotua myös SVN repon. Jostain syystä en saanut paikallisesta SVN-reposta kloonattua, mutta kun pienellä googlailulla en saanut ratkaistua asiaa, niin kloonasin netissä olevan repon ja homma toimi. Ilmeisesti liittyy jotenkin hakemistojen nimiin (jotenkin file:// tyyliin pitäisi kirjoittaa nimi). TortoiseGitin clonessa voi valita branchit, tagit ja trunkin. Itse tein aika perusasetuksilla ja hyvin näytti versiohistoria säilyneen.

Loppu hommasta meni samalla tavalla kuin TFS->Git -hommassakin eli seuraavasti:

Add, Commit ja Push

Mene juurihakemistoon ja lisää uudet tiedostot kuten .gitignore:
git add . 
Minun git-versiollani piti antaa muokkauksien jälkeen komento: git add --all

Sitten tee commit:
git commit -a -m "ensimmäinen commit siirron jälkeen"

Sitten vaihdetaan alkuperäksi minun tapuksessani Visual Studio Online, mutta voit laittaa omankin serverin.
git remote add origin https://omatili.visualstudio.com/DefaultCollection/_git/projekti

Viimeisenä lähetetään sitten tavara pilveen komennolla:
git push -u origin --all

Muita työkaluja

"git-svn - Bidirectional operation between a Subversion repository and Git"
http://git-scm.com/docs/git-svn

Tämä Kernel.orgin wikissä oleva artikkeli on myös hyvä. Siellä on myös migraatiolle oma sivunsa.
https://git.wiki.kernel.org/index.php/GitSvnCrashCourse