Why do people still use svn




















Wellerson says:. June 17, at am. Ilmari Kontulainen says:. February 9, at am. Abhijit Sarkar says:. September 29, at am. Patrick Reynolds says:. February 16, at am. November 26, at am. TS says:. February 26, at pm. John King says:. January 24, at pm. Danny says:. December 30, at pm. JP says:. November 5, at pm. Jerker Montelius says:. October 7, at am. August 8, at am. Zahid says:. February 24, at am. Obfuscator says:. May 16, at pm. Debbra says:. December 31, at pm.

December 7, at pm. KGarvin says:. November 20, at am. PFury67 says:. September 25, at am. Tim Eckel says:. April 30, at pm. LaPingvino says:. December 18, at pm. Zangdaarr says:. December 1, at am. August 5, at am. Harry Gilmore says:.

January 8, at pm. Sello says:. November 27, at pm. Subversion Download says:. September 21, at pm. Lokiitoo says:. March 26, at pm. Afriza N. Arief says:. September 17, at am. John says:. Ches Martin says:. July 30, at pm. January 18, at am. July 29, at am. Tantrido says:. July 28, at pm. The advantages of distributed version control and decent tooling and IDE integration. I mostly just use VSCode these days and it comes with Git support baked in by default and works very well.

I have no idea if it come with any SVN support on the other hand. Add a comment. Rajish Rajish 1 1 silver badge 4 4 bronze badges. In practise, you never pass the git hash around.

You can use any unique prefix of the hash, which typically is characters. JesperE: Yes, but SVN release numbers increase sequentially over time, while Git's hashes, even if you abbreviate them, might as well be random.

Depending on the situation this may have some advantages for SVN this also has some big drawbacks such as the hidden ". Richard Nichols Richard Nichols 1 1 silver badge 2 2 bronze badges.

This is not correct - git allows you to checkout out the files only, without the history, and it is also possible to checkout out only parts of the repo - single files if you want. It's a little more complex than svn, but the capacity is there. Can continue development even without a network connection. Branch management is much easier. Apeirogon Prime Apeirogon Prime 1 1 silver badge 16 16 bronze badges.

SVN does handle binary files better then Git or Hg. I've worked on many projects where this approach leads to making things more complicated than they need to be and the project is cancelled long before it ever gets to take advantage of those future benefits.

Sometimes good enough, is good enough. There'll be time enough for worrying about migrations later. At least you'll still have a project. I completely disagree with this. It may have some perceived benefits in some circumstances, but something as simple as the version number in svn being human-readable is a massive benefit in many organisations.

Of course, this is because this particular repo is full of PCB files and 3D models, which are all binary in format, and not very space efficient. The recommendation here Electronics. SE, e. Show 9 more comments. I think. Konrad Rudolph Konrad Rudolph A Git tutorial with homeomorphic endofunctors mapping submanifolds of a Hilbert space?

I need to read that! But doesn't this rather apply to Darcs, which is written in Haskell which I reckon endofunctor refers to and inspired by quantum mechanics hence Hilbert space? I really can't see what Git and HG have to do with these things. Have you ever considered that all those overly-complicated tutorials exist for a reason? What is Git SVN? How does Git SVN work? What is SVN tool? What protocol does SVN use? How do I get SVN?

How do I manage SVN repository? Is SVN server free? How do I find my SVN repository? Is not a working copy SVN error? What is SVN repository? How do I create a new SVN repository? How do I clone a SVN repository? Can we create remote repository in SVN? How do I access remote SVN repository? You can make a checkout of just one subdirectory deep in a heirarchy, download only the files related to that directory, and still be able to make commits.

Git very recently gave a similar, but not quite as useful variation on this feature called sparse checkouts see also Sparse checkout in Git 1. This lets you filter your working tree, but still forces you to download the entire history of the entire project, which can be prohibitive even when large binaries aren't involved.

Mind you, disk is cheap, and if you absorb the hit of the initial clone in advance subsequent pulls are quick enough, but this doesn't help people that went on a trip before they realized they needed to clone, and in any case even Git's sparse checkouts won't let you start your working tree five levels down, so it looks a bit ugly. In addition, users find authz files easier to write than Git commit hooks, are more comfortable with the SVN syntax and methodology than any DVCS, and perhaps most importantly of all, already have many thousands of commits worth of history in SVN.

Experiments in migrating large Subversion repositories to Git or Mercurial have provided mixed results, and these are scientists trying to get work done on their own projects, not donating their time to development of a DVCS. CVS still has a following for a similar reason.

Imagine, as a Git user, having sparse checkouts that also allow you to arbitrarily remap where files in the branch show up in your working tree, using a format that is versioned along with the repository and is distributed with every usual pull, that allows you to write definitions that can have groups that can include other groups, and that only pulls down the files necessary for filesystem placement on a clone.

For all the sins of CVS and believe me, we're quite aware of them, and go out of our way to discourage new CVS projects unless they absolutely can't live without modules , it's impossible to convince a group using that feature to migrate to another version control system. DVCS software has brought some awesome innovations, but they're also missing things that some developers take for granted.

Make sure you know in advance what your requirements are before choosing one. Talking about the company I work for — the biggest reason for using SVN is being able to keep huge, proprietary format, binary files under version control. Specifically, libraries of thousands of CAD files. Putting aside whether or not you can do shallow "checkouts" with Git, or how well it stores binary data, the fact is that it's designed to track lines of textual information floating around a tree of source code.

As well as it does this, that model is not suited to tracking libraries of binary data. Our company made the decision to stay with SVN because this model fit the way that we handle our release cycle and branching. We see the direct progression of versions as a boon, not a bane. Updates are pushed to a centralized repository, and certain revisions considered "stable" are checked out to a live environment. At any time, it is instantly clear what the state of each environment is to all involved.

Even the management who know nothing about revision control or software development can say: "We liked how you had it when it was at version ".

On the other hand, I should mention that I use darcs and git for projects that I and my friends and co-FOSS'ers work on together, as the distributed, patch-based model works for us.

We can ad-hoc move through the timeline of the project and cherry-pick all kinds of changes. Really the advantage of SVN, my company, is its strong hierarchy and accessibility to non-programmers who are already familiar with concepts of "logging in" and "downloading". Subversion has an advantage when a repository contains lots of binary data, which don't delta-compress well. A Subversion checkout grabs the head only, but git clones the entire history, which can weigh in at multiple gigabytes.

Yes, this is nice for airplane mode, but fetching the initial clone can take hours. People are still using Subversion because it's designed using the first paradigm to come for version control systems centralized. Switching to distributed and change-based instead of version-based can take some time to get accustomed to as you can see in Joel's experience , and so many teams decide not to use it due to resistance to change.



0コメント

  • 1000 / 1000