Is it OK if, within a team, developers use different flavors of SVN? Say one using Tortoise SVN and other using Versionsapp.com SVN?
5 Answers
That's a lot like asking if it's ok for your website users to use Safari and Firefox. There aren't "flavors" of SVN. There are different SVN clients. That is a very different thing. It doesn't matter what client you use.
Yes it should be fine as long as you are using the same version of svn e.g 1.5x and 1.6x will not play nicely with each other.
-
2if he server is 1.5.x, and some team members use 1.6.x clients there will be no badness. using an older client is not advised.– thekbbCommented Jun 18, 2011 at 14:26
The use of different front-ends is entirely a matter of personal choice. There is no risk in using an exotic colorful front-end other than maybe being considered a wimp by your fellow workers.
The use of different versions of the actual SVN program has historically been a very bad idea. For instance, SVN 1.5 would silently and irreversibly upgrade the on-disk format of your local copy to a structure that versions 1.4 and earlier could not use at all - so if e.g. you upgraded your IDE plugin but not the standalone version in your build system, you would break the workflow massively.
The SVN developers claim that such incompatibility problems are in the past now, but I haven't tried newer versions to confirm this, so I'm still wary of using different verions of SVN itself concurrently.
I use four versions on the same machine - two in Windows and two on Linux, including both GUI and command-line versions. I only use it at all because I've had some problems converting my old repositories to Mercurial, but using various different versions with the same repo is no problem.
However - it may be a bad idea to mix very old SVN version numbers with newer ones. I think major version number updates sometimes "upgrade" the repository, not making it inaccessible to older versions, but sometimes causing some problems.
Probably that's only a problem when the repository is accessed directly on a local drive, rather than using a network connection (I've mostly used subversion to keep a repos of documents, photos etc on USB sticks and external drives), but it may be worth checking into anyway. Worst case - you may need to synchronise major-version updates within your team.
The main thing to be careful with in subversion is that merges cause difficulties, to the point where many users never branch. If you're setting up a new system in particular, it may be worth considering a distributed system to avoid these troubles.
Subversion does have a few plus points, though.
-
you aren't using different versions you are using different clients, there is a big semantic difference.– user7519Commented Jul 17, 2012 at 5:22
-
@Jarrod - those different clients were also different versions - not major version differences, but I've rarely if ever had all clients at the same minor version. If you were using different clients on different platforms, and on the same platform for different purposes, would you really make a special effort to ensure they're all in sync? If you're anything like me, the answer is "only if I had to". If you read as far as the second paragraph, you'd have noticed that I specifically talk about major vs. minor version differences.– user8709Commented Jul 17, 2012 at 5:59
-
@Jarrod - besides, the question is about "flavors of SVN", not specifically version numbers, and even lists different clients as examples. So at best you're pedanting about the meaning of the word "version" rather than whether my answer is correct or useful. "Version" is an English language word with typical natural-language subjectivity and ambiguity.– user8709Commented Jul 17, 2012 at 6:07
-
in the tech industry version means something very semantically specific, it is very clear the OP doesn't understand these subtleties and this answer could be confusing or misleading. If you said, four different clients that were all different minor versions it would be a different story. You conflate different clients with versions of SVN. The two things are different than what the confused OP is asking. Tortoise vs Versionsapp.com reference shows this confusion, not only do you not clarify it you add to the confusion and instead of editing your post you defend your mis-information. Wow.– user7519Commented Jul 17, 2012 at 7:13
-
@Jarrod - There's no indication whatsoever that the OP doesn't understand these "subtleties", nor is there any indication that anyone has ever been confused in the year since this was posted. There is no standard for avoiding the word "version" when referring to different variants/flavors/versions/... in a wider sense than version numbers, though I used the specific term "version numbers" to differentiate when relevant. Different clients - particularly on different platforms - could have been a problem. It isn't in this case, but asking is still a reasonable and non-confused thing to do.– user8709Commented Jul 17, 2012 at 13:30
I recently do some work about SVN,my little experiences tell me that they are not much different.Tortoise SVN use a GUI way to do the work,while others may use a commmand line way,but they really did the same work.In all everyone has his way to do thing,so different tool appears to meet their needs.