On Fri, 2009-07-17 at 13:27 -0700, Alex Mandel wrote: > Ken Bloom wrote: > > On Fri, 2009-07-17 at 12:34 -0700, Alex Mandel wrote: > >> I'd like to start writing some code, I'm not really sure if it'll pan > >> out so I don't want to go through the trouble of setting up an svn from > >> the start. > >> > >> What I'd like to do is pick either git,hg or bzr in order to start some > >> code and if I decided to migrate it to svn with history. > >> > >> Anyone have any opinion on which system to use. The problem I've seen so > >> far is that I can only seem to find how to go from svn to others and I > >> need to make sure I can go from others to svn. > > > > Migrating to SVN after you've started in git, hg, or bzr is probably a > > bad idea. The history of a DVCS repository is a directed graph, and > > boiling that down into a linear history that svn expects to work with is > > difficult, if not impossible. > > > > As far as deciding between git, hg, and bzr, it really depends what > > coding community you're a part of. bzr is most popular among Ubuntu > > developers, hg is most popular in the python community (becasue it's > > written in python), and git is popular among kernel developers and ruby > > coders, and I think it's the most popular in general. > > > > I will point out, that bzr is probably the most flexible in terms of > > work flow -- you can make lightweight checkouts that carry no history > > and work like svn if you wanted to, and you can't do that with other > > DVCS. (See > > http://lists.madduck.net/pipermail/vcs-home/2009-April/000210.html ) > > > > --Ken > > Could you explain more about the history difference or point me to some > examples.
An example of how this plays out in git is the git history shown (using the gitk graphical history viewer) in http://lwn.net/images/ns/kernel/gitk.png SVN history is basically supposed to be a straight line -- this version follows that (one) version, which follows that (one) version. Now I'm seeing some information about more merge features in recent versions of SVN, but I haven't used them, and I highly doubt that svn can handle the kinds of histories that git can generate. > I actually found that bzr does have a push to svn and since I > basically want to seed an svn with one branch that's never been merged > in my head it seems to work. If you can visualize the repository's history, and it's a straight line with no merges, then you should be fine. (Though there may be other caveats. About 6 months ago I converted from SVN to git, and I tried bzr first. I found bzr's subversion support lacking for other reasons, I think relating to the fact that I couldn't easily check out the repository directories converting without completely overloading bzr-svn computationally. I found that git could handle it, so I went with git instead.) > On a related thread, in choosing between the various DVCS which one > works best with windows clients, specifically in regards to being able > to merge branches across a network. It could also be framed as which one > is easiest to host branches on a server much like the online services do > but internal only. I don't know anything about windows clients, except that git is notoriously POSIX-based so you'd need to use cygwin or msysgit to use git. The python-based alternatives should be more portable. _______________________________________________ vox-tech mailing list [email protected] http://lists.lugod.org/mailman/listinfo/vox-tech
