l i n u x - u s e r s - g r o u p - o f - d a v i s
L U G O D
 
Next Meeting:
November 4: Social gathering
Next Installfest:
TBD
Latest News:
Oct. 10: LUGOD Installfests coming again soon
Page last updated:
2009 Jul 21 12:17

The following is an archive of a post made to our 'vox-tech mailing list' by one of its subscribers.

Report this post as spam:

(Enter your email address)
Re: [vox-tech] DVCS & SVN together
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [vox-tech] DVCS & SVN together



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
vox-tech@lists.lugod.org
http://lists.lugod.org/mailman/listinfo/vox-tech



LinkedIn
LUGOD Group on LinkedIn
Sign up for LUGOD event announcements
Your email address:
facebook
LUGOD Group on Facebook
'Like' LUGOD on Facebook:

Hosting provided by:
Sunset Systems
Sunset Systems offers preconfigured Linux systems, remote system administration and custom software development.

LUGOD: Linux Users' Group of Davis
PO Box 2082, Davis, CA 95617
Contact Us

LUGOD is a 501(c)7 non-profit organization
based in Davis, California
and serving the Sacramento area.
"Linux" is a trademark of Linus Torvalds.

Sponsored in part by:
EDGE Tech Corp.
For donating some give-aways for our meetings.