
I love this tool - it's honestly one of the best graphical tools I've ever used - rock solid reliable - intuitive, not leaky in the abstractions it represents - and not limited to only "simple" operations. The value of having a graphical depiction of the state that's changing as you invoke operations should not be underestimated. Distributed vc is conceptually nuanced, but not overly complicated - the complexity of git really is in the interface wherein you are asked to map command line syntax into abstract operations that manipulate a state that you actually can't easily see from the command line. So the conversion process indeed doesn't seem to be 100% automagic.īy the way, a completely unrelated question: would it be possible to "slice off" parts of a repository? Let's say, not so hypothetically, that once I reach version 1.5 I'd like to opensource fSekrit, but not provide source or history of anything older than 1.5.Its true - and actually the well designed gui that accurately depicts the graphical state of your local repository makes it far easier to learn the concepts behind git than does the command line. they seem to reference the "remote" location, though. Also, "git tag -l" doesn't show any of my tags, but I can see tag references in TortoiseGit's interface. guess I'll end up testing that before too longĪnyway, I'm still interesting in hearing what experiences other people have, especially if using nonstandard folder structure (fSekrit initially did, version history became rather messy after I fixed it - this might be an opportunity to use git's history-editing capabilities). If it can do file:// urls, copying the repos to my workstation and doing it from here would work too. they don't seem to be in gentoo's portage, and I'm too lazy to figure out where to find them at the moment - other than that, yeah, it'd probably work. I do have git there (as well as gitosis - seems pretty nice), but apparently not the git svn extensions. not to mention that regular non-pushing commits under git are of course instantaneous because they're done locally. In the time it takes me to commit ~10 file changes for fSekrit, I could push ~3.5meg/~500files of Notepad++ CommunityRelease via git. If it really did grab the entire version history and relevant metadata, that's pretty nice (and consistant with what I've read elsewhere).Īnd gosh darn, the git network protocol is SO much faster than subversion's. After "git repack -a -d", I went down to a 423kb repository, 728kb on-disk - smaller than the original subversion repository.

git folder was pretty darn large - the actual filesize was a bit more than the server-side subversion repository (iirc), but the actual on-disk usage was much larger because of filesystem cluster size. Could I copy the repository from my linux server and do git-svn locally with a file:// reference?Īlso, are there any post-conversion tips? I realized that after the initial test conversion of fSekrit, the. fSekrit is a pretty moderately sized repository (91 commits, some 900(?) changesets, 1.4meg server-side repository).
#Smartgit takes took long manual
I think the guide I found will ensure this (even if I might have to do some manual metadata pruning and tag pruning), but I'd like to hear if any other members have experience with this process?įurthermore, the git-svn conversion process is slow, even across my gigabit LAN.

however, I want to make sure I get my entire version history over, I want it "in a sane state" (ie, svn /tags should be git tags and not branches, there should be no references to the old svn repo when done, et cetera).

I've found a bunch of guides, and one using git-svn seems to be able to do the trick. In fact, I'm comfortable enough with git that I'd like to conver my existing subversion repositories over. I've been playing around with GIT for a bit now, and feel relatively comfortable with it - the basics (enough for using it basically in a "mostly centralized" mindset) are definitely drop-dead simple, topic-branch workflow doesn't seem too complicated and definitely has value, and the more fancy stuff can be ignored until you find yourself needing it.

So, lemme re-use this thread, seems appropriate enough.
