blob: d011fa58171fcef39e02390e16089f8c9151f7d5 [file] [log] [blame]
Note from user visits by Hyrum - Jan., Feb. 2010
Introduction
============
I've recently had an opportunity to visit with a number of corporate users
of Subversion. My basic question was "what should you think the future of
Subversion should be?" While not everybody spoke to that question, all the
responses were illuminating, so I'm recording them here for posterity.
(These aren't all of the people I've talked to, just the ones which had the
most feedback.)
User 1
======
Background
----------
A large corporate installation of Subversion. The development manager I
spoke with supervises several thousand developers. They use Subversion, but
there is some grassroots movement from his developers to switch to a DVCS.
Concerns
--------
Branching & merging too slow
Overall speed
"Branching & merging fixed by the end of the year, or you are dead."
Refactoring support
"If you are going to fail, I'll leave as soon as possible."
Great interest in obliterate support
Places Subversion stands out
----------------------------
Multi-platform support
(others)
Take-aways
----------
Overall, the meeting was a bit negative, but that's what I expected (and asked
for, even). Hearing folks' concerns is how we improve. In the end, I came
to the realization that we wouldn't be having the conversation if folk like
him didn't see hope, and didn't want to see improvement. As a development
manager, the idea of moving to a DVCS is not very appealing at all, and he
wants to see Subversion succeed.
User 2
======
Background
----------
Another large corporate installation, recently moved from CVS to Subversion.
~3000 developers.
Concerns
--------
Obliterate support
Tags are useless (would essentially like revnum aliases of some kind)
No zero-change commit support.
Long option names
Atomic import (a delete and import in one rev)
Merge ancestry issues are painful
Want 'svn diff@WORKING'
Various scalability concerns
Long-running merge operations
Places Subversion stands out
----------------------------
Much better than CVS in every practical way
Take-aways
----------
A lot of the Concerns are actually somewhat-valid feature requests. We should
attempt to vet them, and if found justifiable, implement them.
User 3
======
Background
----------
Large multinational corporate, many regions each with relatively few developers
(10-20 per region say), couple of hundred in HQ. Beginning to work with
outsourced development centres. Moved from VSS to SVN 18 months ago (but
planning longer).
Concerns
--------
* Performance. Base product is 20,000 files in a few hundred Mb Data, plus
smaller modules. Initial checkin of the base often fails and has to be
performed piecemeal. Some log commands take a while, TortoiseSVN's revision
graph is unusable.
* Server-based configuration. It's not nice when a user forgets to set his
global-excludes for example.
* Obliterate support would be nice to clean up the repo.
* Archiving support also - ie to delete revisions over 2 years old, for
example, whilst keeping newer revisions.
* Better admin tools in general, our repo is 12Gb now, so svnadmin
dump/filter/load is almost impractical.
* Tags are useless (almost), we'd want revnum aliases too. Especially would
like to create a single tag, but then use that to hold all releases - eg,
1 tag branch where each revision is a release. Merging makes this slightly
difficult and not suitable as we just want to 'merge' onto the tag by copying
the current file over, not by merging revisions, not by doing a checkout and
commit.
* Search - there's no good ability that can index a repo for searching, nor to
search log comments.
Places Subversions stands out
-----------------------------
* Simple and easy to use.
* Good repository view - the directory structure is easy to understand and has
good visibility.
* Excellent integration with other tools. "right thing done right" when
combined with other best-of-breed tools can be beautiful (eg bugtracker,
requirements/project management, document repositories), plus other utilities
such as TortoiseSVN and Apache views.
* Svnsync.
Other Users
===========
I talked to one user who had actually written a custom client, which allowed
them to implement overlay checkouts, which was important for their work flow.
I was duly impressed, in a sort of "what-in-the-world?" way.
A chip design firm is interested in using Subversion to version their
artifacts, and was interested to know what kinds of integration exist for
the various chip design tools.