Why SVN?

Should I be using SVN rather than Darcs or Git?

Subversion has apparently become the version control system of choice
for Ruby developers --especially now that Ruby itself uses it. I
suspect that might have a lot to do with Rails and Rubyforge. Ruby
only switched over to SVN well after Rails had been using it. And
Rubyforge currently only supports SVN and CVS, which I find a bit
surprising since, from what I understand, supporting Darcs is just a
matter of having Darcs installed. And I can't imagine Git is much
different.

So I'm wondering, what's so special about SVN as opposed to the other
choices? Is it because SVN is more like CVS than the other choices?
The fact that SVN isn't distributed I would think would work against
it (though I hear SVK is supposed to deal with that). Darcs is written
in Haskell, and from the word on the street a lot of Ruby folk seem to
like Haskell. Also, Git was written by Linus Torvalds, which is about
as good as credentials can get.

Thanks,
T.

Why not SVN?

···

On 3/12/07, Trans <transfire@gmail.com> wrote:

Should I be using SVN rather than Darcs or Git?

Subversion has apparently become the version control system of choice
for Ruby developers --especially now that Ruby itself uses it. I
suspect that might have a lot to do with Rails and Rubyforge. Ruby
only switched over to SVN well after Rails had been using it. And
Rubyforge currently only supports SVN and CVS, which I find a bit
surprising since, from what I understand, supporting Darcs is just a
matter of having Darcs installed. And I can't imagine Git is much
different.

So I'm wondering, what's so special about SVN as opposed to the other
choices? Is it because SVN is more like CVS than the other choices?
The fact that SVN isn't distributed I would think would work against
it (though I hear SVK is supposed to deal with that). Darcs is written
in Haskell, and from the word on the street a lot of Ruby folk seem to
like Haskell. Also, Git was written by Linus Torvalds, which is about
as good as credentials can get.

Thanks,
T.

--
"Hey brother christian with your high and mighty errand, Your actions speak
so loud, I can't hear a word you're saying."

-Greg Graffin (Bad Religion)

Should I be using SVN rather than Darcs or Git?

Subversion has apparently become the version control system of choice
for Ruby developers --especially now that Ruby itself uses it. I
suspect that might have a lot to do with Rails and Rubyforge. Ruby
only switched over to SVN well after Rails had been using it.

SVN is very much like CVS. It does have better handling of the
hierarchical structure of a project in that it versions the directory
hierarchy. This makes it nicer for things like Rails which make a
fair use of directory hierarchies.

And
Rubyforge currently only supports SVN and CVS, which I find a bit
surprising since, from what I understand, supporting Darcs is just a
matter of having Darcs installed. And I can't imagine Git is much
different.

I think it's a matter of the repository itself, they'd need to have
more parallel copies of the code in different repository formats.

So I'm wondering, what's so special about SVN as opposed to the other
choices? Is it because SVN is more like CVS than the other choices?
The fact that SVN isn't distributed I would think would work against
it (though I hear SVK is supposed to deal with that). Darcs is written
in Haskell, and from the word on the street a lot of Ruby folk seem to
like Haskell. Also, Git was written by Linus Torvalds, which is about
as good as credentials can get.

A good bit of it is the relationship between CVS and SVN, if you are
used to CVS then SVN is a fairly easy transition. Those two are
probably the most popular version systems around, so it's also a
matter of market share.

Git was written as a recovery from having the BitKeeper license yanked
out from under the linux project. FWIW.

···

On 3/12/07, Trans <transfire@gmail.com> wrote:

--
Rick DeNatale

My blog on Ruby
http://talklikeaduck.denhaven2.com/

The system that is used is a good one.

I have use Visual Source Safe, CVS and for last tree and more years
exclusively subversion.
There is no bad system but I wouldn't go back to previous ones.

I use subversion on my work and form all my home pet projects.

It is very reachable thought out various protocols, easy command line
syntax, has GUI Tools, configurable from administrator's point of
view, mature system, has lot of knowledge.

This can be taken as personal opinion colored by some personal
affinity. To take more objective approach investigates what big source
repositories sites using like Google or other Forge sites.

If you have time perhaps you can try all of them and find the one that
suit your needs.

Trans schrieb:

Should I be using SVN rather than Darcs or Git?

I use git for the reason of *very simple* branching and *fast* branch
switching. If I want to try something out, I create a new branch and
check it out. Then programming and testing a bit make commits of some
steps and if I don't like it I can throw the complete branch away
without changing the main development stream. If it is nice I merge it
and delete the no longer needed branch. Therefore I like git. :slight_smile:

In subversion I have never create a branch: It was to expensive for me.

m2c
Jan

Trans wrote:

Should I be using SVN rather than Darcs or Git?

No one else has mentioned it, and I'm sure it's not relevant for you, but TortoiseSVN is enough of a reason in itself for me to choose SVN for any project where I might have to do anything on Windows. It's just that good.

Other than that, I'm a big darcs fan too.

···

--
Alex

Should I be using SVN rather than Darcs or Git?

Only if all your co-developers are. But otherwise, probably not.

So I'm wondering, what's so special about SVN as opposed to the other
choices? Is it because SVN is more like CVS than the other choices?

Pretty much, it's also been around longer and thus is "more mature."

Subversion is reasonably familiar to those who are used to the CVS paradigm
of revision control. Although just because people are used to it, and it's
popular, doesn't make it necessarilly good. Frankly, I'm not much of a fan
of Subversion, although I much prefer it to CVS.

Also, Git was written by Linus Torvalds, which is about as good as
credentials can get.

Yes, however Git was written to achieve nothing more than managing the
Linux kernel. The fact that it's applicable to other problem domains is a
coincidence, not a design feature. If you're managing a project that much
resembles the Linux kernel, Git might be the right choice for you. If not,
there might be an impedance mismatch.

Recently I've become a fan of Mercurial. It has a few issues (besides
being written in Python =P), but otherwise I find it to be a better match
for my needs than Subversion. I also considered Git, but I found it much
less approachable, although 1.5.0 is supposed to be easier to use.

My biggest gripe with Subversion is that branch merges are braindead (have
to specify revision boundaries), which makes branching much less useful
than it could be. Two minor gripes are that the BDB backend was a mistake
only recently seems to have gone away, and that operations tend to be
painfully slow.

In general, I'm a fan of the distributed model of development, be it with
Mercurial, Git, Darcs, etc. Branching is a great concept that isn't used
effectively in CVS or Subversion becuase of branch/merge limitations.

I like being able to checkout a project (often one I don't have
permissions to the central repository other than read), make a bunch of
local changes _and_ local commits that don't affect other users, then once
tested perform a branch push (possibly with a pull/merge).

I find that with Subversion folks are much less willing to make
intermediate commits since they tend to affect all users unless a separate
branch is used, and branches are difficult with Subversion.

The one scenario where I find Subversion really useful is when I
specifically don't want to maintain a local copy of an entire repository,
especially a large one like the Linux kernel. With Subversion, I only need
a local copy of the checked out revision. That's the one thing where I
wish there was better handling in distributed revision control
systems--although folks may claim that such handling would break the
paradigm.

···

On Tue, Mar 13, 2007 at 04:25:50AM +0900, Trans wrote:

Hi,

···

In message "Re: Why SVN?" on Tue, 13 Mar 2007 04:25:50 +0900, "Trans" <transfire@gmail.com> writes:

Should I be using SVN rather than Darcs or Git?

For your information, I use stgit for managing my local Ruby
repository. I wanted to manage my experimental patches in stack
based.

              matz.

I like the ability to develop a patchset as an object -- 'here, does
this set work?' -- and discuss. I like the orientation of discussing
changes rather than states.

I cherry-pick a lot -- it also lets me take my production copy -- which
has a couple site-specific changes to version-controlled files still --
and make a hotfix and push back to the repo from that without getting my
changes mixed in.

[http://www.thtmobile.com]Mobile Solution
[http://www.thtmobile.com/partners.htm] Mobile Solutions

···

--
Posted via http://www.ruby-forum.com/.

Should I be using SVN rather than Darcs or Git?

Yes.

Darcs and Git are distributed version control systems without much
proven technology behind them, and are painfully Unix-oriented.

So I'm wondering, what's so special about SVN as opposed to the other
choices? Is it because SVN is more like CVS than the other choices?
The fact that SVN isn't distributed I would think would work against
it (though I hear SVK is supposed to deal with that). Darcs is written
in Haskell, and from the word on the street a lot of Ruby folk seem to
like Haskell. Also, Git was written by Linus Torvalds, which is about
as good as credentials can get.

Quality in kernel management doesn't mean his version control system
is any good. I'm not saying it's bad -- at all -- but the credentials
don't transfer there.

Distributed systems fit very few development models.

-austin

···

On 3/12/07, Trans <transfire@gmail.com> wrote:
--
Austin Ziegler * halostatue@gmail.com * http://www.halostatue.ca/
               * austin@halostatue.ca * You are in a maze of twisty little passages, all alike. // halo • statue
               * austin@zieglers.ca

Why not SVN?

This is going a bit OT for ruby-talk, but I'll bite.

I work from several different machines, in several different locations,
including from a laptop that is often disconnected from the internet. It's
extremely useful for me to be able to record changes, branch, work, in my
normal manner, without worrying about the fact that when I DO get a
connection all my changes will show up as one big lump. So I use Darcs over
SSH. It gives me a full, functional repository with "commits" as I need
them, without being connected. Then when I get back to civilization I can
push all my changes back to my main repo and be good to go, SVN can't give
me that kind of work flow, so I've moved away from it. (I'm aware of SVK,
but never could get it working well on linux/mac/and windows)

At work, where I work from a single workstation, always connected to the
network, I use SVN, because it fits the environment better. Use the tool
that fits the job, and move on.

···

On 3/12/07, Glen Holcomb <damnbigman@gmail.com> wrote:

On 3/12/07, Trans <transfire@gmail.com> wrote:

>
> Should I be using SVN rather than Darcs or Git?
>
> Subversion has apparently become the version control system of choice
> for Ruby developers --especially now that Ruby itself uses it. I
> suspect that might have a lot to do with Rails and Rubyforge. Ruby
> only switched over to SVN well after Rails had been using it. And
> Rubyforge currently only supports SVN and CVS, which I find a bit
> surprising since, from what I understand, supporting Darcs is just a
> matter of having Darcs installed. And I can't imagine Git is much
> different.
>
> So I'm wondering, what's so special about SVN as opposed to the other
> choices? Is it because SVN is more like CVS than the other choices?
> The fact that SVN isn't distributed I would think would work against
> it (though I hear SVK is supposed to deal with that). Darcs is written
> in Haskell, and from the word on the street a lot of Ruby folk seem to
> like Haskell. Also, Git was written by Linus Torvalds, which is about
> as good as credentials can get.
>
> Thanks,
> T.
>

--
"Hey brother christian with your high and mighty errand, Your actions
speak
so loud, I can't hear a word you're saying."

-Greg Graffin (Bad Religion)

--
===Tanner Burson===
tanner.burson@gmail.com
http://www.tannerburson.com

To quote from the SVN webpage:
Subversion is meant to be a better CVS, so it has most of CVS's
features. Generally, Subversion's interface to a particular feature is
similar to CVS's, except where there's a compelling reason to do
otherwise.

Without delving into specifics, SVN makes it a lot easier to do things
than CVS does, especially administrative tasks and branching etc.

It's powerful enough to draw hardcore CVS users to it, and power/easy
enough to draw hardcore VSS* users to it.

--Kyle

* Sometimes those hardcore visual source safe users are companies.
Whole big fat companies who makes oodles of money and don't bat an eye
at 3k/machine licensing fees.

There is no bad system but I wouldn't go back to previous ones.

Having used Visual Source Safe extensively I have to take exception to
that statement :wink:

While distributed version control systems offer some benefits, they're
still not really mainstream. Most developers are accustomed to the way
things are done in central repositories, and working offline is, with
the exception of maybe a short stint on a plane or train, not that
common nowadays. The benefits of darcs, etc. don't really justify the
effort that would need to be put into migrating the existent proven
infrastructure and potentially alienating some people who are put of
by the slightly esoteric nature of the alternatives. A clear case of
"if it ain't broke, don't fix it". That shouldn't keep you from
hosting your code in darcs though if you prefer.

   -tim

See now this is interesting. Cause I feeling inclined toward Git for
these same reasons. In fact here's a diagram of me being torn:

                  I, Torn

                     O
   SVN <-- --|-- --> Git
                    / \
  Solid Darcs Faster
  Popular Stronger
  Supported Better

Not that Darcs hasn't been good to me.

:slight_smile: T.

···

On Mar 12, 5:55 pm, Jan Friedrich <frd...@gmail.com> wrote:

Trans schrieb:> Should I be using SVN rather than Darcs or Git?

I use git for the reason of *very simple* branching and *fast* branch
switching. If I want to try something out, I create a new branch and
check it out. Then programming and testing a bit make commits of some
steps and if I don't like it I can throw the complete branch away
without changing the main development stream. If it is nice I merge it
and delete the no longer needed branch. Therefore I like git. :slight_smile:

In subversion I have never create a branch: It was to expensive for me.

Bazaar (also written in Python :-)) has had lightweight checkouts for a while:

http://bazaar-vcs.org/SharedRepositoryTutorial?highlight=(lightweight)

They should also work for Subversion repositories.

···

On Tue, Mar 13, 2007 at 09:21:36AM +0900, Mike Kasick wrote:

The one scenario where I find Subversion really useful is when I
specifically don't want to maintain a local copy of an entire repository,
especially a large one like the Linux kernel. With Subversion, I only need
a local copy of the checked out revision. That's the one thing where I
wish there was better handling in distributed revision control
systems--although folks may claim that such handling would break the
paradigm.

--
Jos Backus
jos at catnook.com

Hi,

...

For your information, I use stgit for managing my local Ruby
repository. I

Oh oh, Matz, you're going to get the pythonistas all excited <G>

···

On 3/13/07, Yukihiro Matsumoto <matz@ruby-lang.org> wrote:

--
Rick DeNatale

My blog on Ruby
http://talklikeaduck.denhaven2.com/

Cool. So how do you sync back up with the SVN repo? I tried using SVN
and Darcs on the same project and ran into problems. Maybe it's not a
problem with Git? Or do you have to do something special?

T.

···

On Mar 13, 8:09 pm, Yukihiro Matsumoto <m...@ruby-lang.org> wrote:

Hi,

In message "Re: Why SVN?" > on Tue, 13 Mar 2007 04:25:50 +0900, "Trans" <transf...@gmail.com> writes:

>Should I be using SVN rather than Darcs or Git?

For your information, I use stgit for managing my local Ruby
repository. I wanted to manage my experimental patches in stack
based.

I can't resist replying to this troll. I call FUD on the "distributed
version control systems without much proven technology behind them"
claim until we get details. I'd really like to hear why you think you
have a winner just because something is different. It's obvious you
think you have a great reason to feel strongly about using Subversion.
I think it is only fair that you share why if you plan on telling
people such absolutes. So please, enlighten me.

Brian.

···

On 3/14/07, Austin Ziegler <halostatue@gmail.com> wrote:

On 3/12/07, Trans <transfire@gmail.com> wrote:
> Should I be using SVN rather than Darcs or Git?

Yes.

Darcs and Git are distributed version control systems without much
proven technology behind them, and are painfully Unix-oriented.

> So I'm wondering, what's so special about SVN as opposed to the other
> choices? Is it because SVN is more like CVS than the other choices?
> The fact that SVN isn't distributed I would think would work against
> it (though I hear SVK is supposed to deal with that). Darcs is written
> in Haskell, and from the word on the street a lot of Ruby folk seem to
> like Haskell. Also, Git was written by Linus Torvalds, which is about
> as good as credentials can get.

Quality in kernel management doesn't mean his version control system
is any good. I'm not saying it's bad -- at all -- but the credentials
don't transfer there.

Distributed systems fit very few development models.

-austin

[snip]

Distributed systems fit very few development models.

[snip]

Not true in my experience. Every place I've worked in the last couple of years has had to deal with developers that don't always have online access to the repo, or are in locations where connectivity sucks so badly to their home location that it might as well not exist.

In fact every place I've every worked ever has had those problems - its just that we only had solutions recently :slight_smile:

Don't get my wrong. I love Subversion. My home repo has been running it for years and I'm in the process of moving $work over to it.

But I've been using SVK to as my primary client to access those repositories for ages - and I wouldn't want to go back to not being able to commit on the train :slight_smile:

Cheers,

Adrian

···

On 14 Mar 2007, at 20:46, Austin Ziegler wrote: