Version Control - Advice needed
-
- Grand Pontificator
- Posts: 3015
- Joined: Thu Mar 13, 2003 5:35 pm
Version Control - Advice needed
Hey guys,
I remember discussing this with Tax and Dd at one time, but I don't remember the thread.
Anyway, I'm looking to replace our current source code control with something a little higher tech and better performance - maybe even something web-based.
Background
One of the reasons I was hired 6 years ago was to bring version control to a company that had never tasted it. So what I went with was something I had used for a few years before that, which is Microsoft Visual Source Safe over a VPN. This copy of source safe (6.0d I think?) is, what, almost 10 years old?
Problem Statement
We have about 15 developers running the gamut from DOS COBOL to Microsoft .NET. Our little shop also spans 4 states with 2 guys overseas. Source Safe pretty much works but the performance is terrible. Overseas they have to come in a couple hours early just to check out their files. Our VPN is on a sucky T1 (the building management doesn't allow anything else and we're in a long lease) and the connection is usually saturated. Either way I'm going to move our source code to a hosted provider to improve performance, but source will still be a dog and it's really starting to get on my nerves, especially given it's something I'm in charge of.
I was something of a version control guru 10-15 years ago. I remember the first company I worked for spent $25k for a copy of some cutting edge version control software and spending a 2 weeks of 12 hour days being trained. Since then I give classes on and off in the theory, but now I'm behind the times a little and could use the help.
Requirements
Our new source code management software needs to be for WIndows, be either free, really super cheap, or a Microsoft product since we keep the full MSDN subscription (which I have to have an hour argument every year over since it costs like $4k).
Advice Needed
Help! Tax, DD or anyone else, tell me what we should be using! I know a few of our clients use Microsoft Sharepoint and my sister has used it, but does that do the kind of version control we'd need for software development? I know that stuff is built into Visual Studio but we have some guys that still do DOS COBOL (though we all Windows). Any good shareware software? Web based?
Thanks!
I remember discussing this with Tax and Dd at one time, but I don't remember the thread.
Anyway, I'm looking to replace our current source code control with something a little higher tech and better performance - maybe even something web-based.
Background
One of the reasons I was hired 6 years ago was to bring version control to a company that had never tasted it. So what I went with was something I had used for a few years before that, which is Microsoft Visual Source Safe over a VPN. This copy of source safe (6.0d I think?) is, what, almost 10 years old?
Problem Statement
We have about 15 developers running the gamut from DOS COBOL to Microsoft .NET. Our little shop also spans 4 states with 2 guys overseas. Source Safe pretty much works but the performance is terrible. Overseas they have to come in a couple hours early just to check out their files. Our VPN is on a sucky T1 (the building management doesn't allow anything else and we're in a long lease) and the connection is usually saturated. Either way I'm going to move our source code to a hosted provider to improve performance, but source will still be a dog and it's really starting to get on my nerves, especially given it's something I'm in charge of.
I was something of a version control guru 10-15 years ago. I remember the first company I worked for spent $25k for a copy of some cutting edge version control software and spending a 2 weeks of 12 hour days being trained. Since then I give classes on and off in the theory, but now I'm behind the times a little and could use the help.
Requirements
Our new source code management software needs to be for WIndows, be either free, really super cheap, or a Microsoft product since we keep the full MSDN subscription (which I have to have an hour argument every year over since it costs like $4k).
Advice Needed
Help! Tax, DD or anyone else, tell me what we should be using! I know a few of our clients use Microsoft Sharepoint and my sister has used it, but does that do the kind of version control we'd need for software development? I know that stuff is built into Visual Studio but we have some guys that still do DOS COBOL (though we all Windows). Any good shareware software? Web based?
Thanks!
- Taxious
- Rum Guzzler
- Posts: 5056
- Joined: Fri Apr 18, 2003 10:16 am
- Location: Denver, CO
Re: Version Control - Advice needed
That other thread was located here btw: http://brellrants.net/forum/viewtopic.php?f=29&t=18546
(side note: not sure why search doesn't work for small queries like "SVN" or "TFS" - I guess it's an optimization thing in case people search for "and"?)
Personally, I would go with Subversion. I've had to use and set up multiple SVN servers as well as help some co-workers get started with it. It's free, has no issues cross-OS, and is easy to setup/use.
There are a few different user interfaces (that are also free) that are available in case you have people at work that are afraid of terminal windows. I prefer Tortoise although I'm not sure if this is cross-OS as I've only used it on Windows. I'm sure there are other GUIs out there for apple/tux people though.
Our IT guy was able to set up a pretty simple SVN --> web page that displays all the projects currently under version control. I love this! It makes keeping track of versioned projects that much easier. Hell, it might even come with SVN - all he told me was that it was easy to set up.
Keep in mind that I'm an open source fanboi, you may get better results/support (although I doubt it) from buying something like TFS.
(side note: not sure why search doesn't work for small queries like "SVN" or "TFS" - I guess it's an optimization thing in case people search for "and"?)
I wasn't aware that Sharepoint had a version control component with it. From my limited (and very shitty) experience with Sharepoint, I found it to be a very simple framework for building intranet sites. I'm sure it goes beyond that, but that's just the feeling I got from developing in it.Freecare Spiritwise wrote:I know a few of our clients use Microsoft Sharepoint and my sister has used it, but does that do the kind of version control we'd need for software development?
Personally, I would go with Subversion. I've had to use and set up multiple SVN servers as well as help some co-workers get started with it. It's free, has no issues cross-OS, and is easy to setup/use.
There are a few different user interfaces (that are also free) that are available in case you have people at work that are afraid of terminal windows. I prefer Tortoise although I'm not sure if this is cross-OS as I've only used it on Windows. I'm sure there are other GUIs out there for apple/tux people though.
Our IT guy was able to set up a pretty simple SVN --> web page that displays all the projects currently under version control. I love this! It makes keeping track of versioned projects that much easier. Hell, it might even come with SVN - all he told me was that it was easy to set up.
Keep in mind that I'm an open source fanboi, you may get better results/support (although I doubt it) from buying something like TFS.
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
-
- Grand Pontificator
- Posts: 3015
- Joined: Thu Mar 13, 2003 5:35 pm
Re: Version Control - Advice needed
Sweet, thanks a bunch Tax. I see that DD was telling me the same thing. I did a little digging and it looks like Subversion is exactly what I need.
You told me which client, but which server do you use? Collabnet looks really cool but it doesn't look free. Do I have to install Apache too? Is there a version that uses IIS?
How does it do backups? Do you just grab some folder structure like source safe or is there some backup mechanism built in?
You told me which client, but which server do you use? Collabnet looks really cool but it doesn't look free. Do I have to install Apache too? Is there a version that uses IIS?
How does it do backups? Do you just grab some folder structure like source safe or is there some backup mechanism built in?
- Taxious
- Rum Guzzler
- Posts: 5056
- Joined: Fri Apr 18, 2003 10:16 am
- Location: Denver, CO
Re: Version Control - Advice needed
http://subversion.apache.org/packages.htmlFreecare Spiritwise wrote:You told me which client, but which server do you use? Collabnet looks really cool but it doesn't look free. Do I have to install Apache too? Is there a version that uses IIS?
I've only installed the server under debian but it looks like that page has some options. For Windows, I'd start with one of the Tigris.org choices. No - you don't need Apache, I'm not sure why it's even mentioning it on that page.
This I am unsure of as I've never had to do a backup with it.Freecare Spiritwise wrote:How does it do backups? Do you just grab some folder structure like source safe or is there some backup mechanism built in?
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
-
- Grand Pontificator
- Posts: 3015
- Joined: Thu Mar 13, 2003 5:35 pm
Re: Version Control - Advice needed
Hmm the Tigris.org binaries for Windows say they require apache. Oh well, I'd rather not install Apache but if I have to then I have to. At least I'm on the right track with thinking Subversion is exactly what I need. I'm willing to take the time to get to know it.
I can play around on a Server 2003 virtual machine and then when I have the install down then I'll push it to a live server.
I can play around on a Server 2003 virtual machine and then when I have the install down then I'll push it to a live server.
-
- Soverign Grand Postmaster General
- Posts: 7185
- Joined: Mon Nov 08, 2004 3:06 am
Re: Version Control - Advice needed
Would using Terminal Services to connect improve your performance as all of the code will run local to the servers?
-
- Grand Pontificator
- Posts: 3015
- Joined: Thu Mar 13, 2003 5:35 pm
Re: Version Control - Advice needed
No. Our overseas guys tried that and the performance was worse. Terminal services sucks for any kind of data transfers so you'd be losing the small benefit. You still have to get your work to your machine no matter how you slice it. Besides, unless you check your files out to the working folder for that project then you're not getting the full benefits of version control. Subvert it and you WILL eventually do something stupid like step on somebody else's changes and I WILL roll that change back and chew your ass out.Kulaf wrote:Would using Terminal Services to connect improve your performance as all of the code will run local to the servers?
I know people who do ALL their work with terminal services uncluding their development environment which solves the not-subverting-version-control issue, but I think I'd probably jump off a bridge if I had to do all my work that way.
I think what's going to make the difference is something that's true client/server. That and putting it all on a higher bandwidth connection.
-
- Grand Inspector Inquisitor Commander
- Posts: 2636
- Joined: Fri Dec 20, 2002 9:42 pm
Re: Version Control - Advice needed
http://www.codinghorror.com/blog/2008/0 ... ndows.html
You might want to try AnkhSVN as a client if you want something more integrated into Visual Studio. http://ankhsvn.open.collab.net/
I personally don't like Subversion, but since your requirement is something free it's probably the best and most stable you're going to get.
You might also look at Git or Mercurial. Since they are distributed they might work better for remote people.
There are many hosted providers available for all of these if you decide to go that way.
You might want to try AnkhSVN as a client if you want something more integrated into Visual Studio. http://ankhsvn.open.collab.net/
I personally don't like Subversion, but since your requirement is something free it's probably the best and most stable you're going to get.
You might also look at Git or Mercurial. Since they are distributed they might work better for remote people.
There are many hosted providers available for all of these if you decide to go that way.
Bahd Zoolander - Transcendent - On Vacation
-
- Save a Koala, deport an Australian
- Posts: 17517
- Joined: Thu Jan 02, 2003 3:00 pm
- Location: Straya mate!
- Contact:
Re: Version Control - Advice needed
The Collabnet stuff is free, unless you want to pay for support. Get the server stuff here: http://www.open.collab.net/downloads/subversion.html. You don't need to run it under apache - can just run it as a standalone server with svn:// url's instead of http://.
We run a CentOS 5.x VM with the collabnet server on it and primarily use TortoiseSVN as the interface, with AnkhSVN inside Visual Studio to manage things directly from the IDE. We have the server running standalone and not through Apache. We currently have about 170,000 revisions in the database so it's a fairly non-trivial install and copes very happily.
Make *sure* you read the Red Bean book (free online) on subversion before you set your server up and follow all the recommendations about setting up the tree (trunk, tags and branches) or you'll end up in a world of pain later on. Also don't be afraid of writing pre-commit and post-commit hooks that do all sorts of workflow management because it makes life a lot simpler!
Other stuff we use (not free):
On top of that we use FishEye and Crucible from Atlassian to do source code browsing/searching via the intranet and handle all our code reviews. The fact we're using Jira and Confluence for issue tracking and wiki made that a no-brainer of a choice.
We use TeamCity (from JetBrains) for our CI build server - can't say enough good stuff about it, and if you've never used Resharper (again JetBrains) for refactoring and static analysis on .NET apps then you're really missing out on massive productivity boosts.
Email or IM me directly if you want to chat about it.
Dd
We run a CentOS 5.x VM with the collabnet server on it and primarily use TortoiseSVN as the interface, with AnkhSVN inside Visual Studio to manage things directly from the IDE. We have the server running standalone and not through Apache. We currently have about 170,000 revisions in the database so it's a fairly non-trivial install and copes very happily.
Make *sure* you read the Red Bean book (free online) on subversion before you set your server up and follow all the recommendations about setting up the tree (trunk, tags and branches) or you'll end up in a world of pain later on. Also don't be afraid of writing pre-commit and post-commit hooks that do all sorts of workflow management because it makes life a lot simpler!

Other stuff we use (not free):
On top of that we use FishEye and Crucible from Atlassian to do source code browsing/searching via the intranet and handle all our code reviews. The fact we're using Jira and Confluence for issue tracking and wiki made that a no-brainer of a choice.
We use TeamCity (from JetBrains) for our CI build server - can't say enough good stuff about it, and if you've never used Resharper (again JetBrains) for refactoring and static analysis on .NET apps then you're really missing out on massive productivity boosts.
Email or IM me directly if you want to chat about it.
Dd
-
- Save a Koala, deport an Australian
- Posts: 17517
- Joined: Thu Jan 02, 2003 3:00 pm
- Location: Straya mate!
- Contact:
Re: Version Control - Advice needed
Backups on subversion:
You can either shut down the server and do a straight archive of the folder structure or look at the hot-copy scripts. One of the features of the "fsfs" repository format is that once the main database files are written they are immutable, so you can always do a fast incremental copy to maintain your backups. It even works when you shift directories onto read-only media.
Again, read the Red Bean book (http://svnbook.red-bean.com, look at the v1.6 nightly build) and it should answer all the admin questions.
On git/mercurial:
Mercurial is better in a windows environment (git depends heavily on unix-ish tools while mercurial is python based). I love the concept of them, but they are really still bleeding edge on windows and nowhere near as solid as the svn/tortoise/ankh combination.
Dd
You can either shut down the server and do a straight archive of the folder structure or look at the hot-copy scripts. One of the features of the "fsfs" repository format is that once the main database files are written they are immutable, so you can always do a fast incremental copy to maintain your backups. It even works when you shift directories onto read-only media.
Again, read the Red Bean book (http://svnbook.red-bean.com, look at the v1.6 nightly build) and it should answer all the admin questions.
On git/mercurial:
Mercurial is better in a windows environment (git depends heavily on unix-ish tools while mercurial is python based). I love the concept of them, but they are really still bleeding edge on windows and nowhere near as solid as the svn/tortoise/ankh combination.
Dd
-
- Grand Pontificator
- Posts: 3015
- Joined: Thu Mar 13, 2003 5:35 pm
Re: Version Control - Advice needed
@Bahd: Thanks for the link. Heh, so much hate for source safe. I think I'm set on subversion.
@Dd: Great info. I will probably email you in the next few days and I'm going to start reading that book. Hmm Collabnet looks cool and I'll probably start with that. So I just need Apache if I want to run it as HTTP? That might just be worth it since IIRC Apache is a fairly low footprint and nobody will care if I install it as long as it doesn't interfere with IIS.
Question: How does Subversion structure its data? You said "We currently have about 170,000 revisions in the database". Does it have some home brew database or does it use some off the shelf DBMS?
Thanks as always guys - I owe all of you guys a beer
@Dd: Great info. I will probably email you in the next few days and I'm going to start reading that book. Hmm Collabnet looks cool and I'll probably start with that. So I just need Apache if I want to run it as HTTP? That might just be worth it since IIRC Apache is a fairly low footprint and nobody will care if I install it as long as it doesn't interfere with IIS.
Question: How does Subversion structure its data? You said "We currently have about 170,000 revisions in the database". Does it have some home brew database or does it use some off the shelf DBMS?
Thanks as always guys - I owe all of you guys a beer

-
- Save a Koala, deport an Australian
- Posts: 17517
- Joined: Thu Jan 02, 2003 3:00 pm
- Location: Straya mate!
- Contact:
Re: Version Control - Advice needed
The only issue with running Apache and IIS side by side is one of them (obviously) will run on a non-standard port. As long as you're fine with your subversion URLs looking like http://svnserver:81/myproject/trunk/blahblah then it's not really an issue. I'm not sure there's any significant advantages running it via Apache - just a different way of doing things.
Subversion has two options for the way it stores the data. bdb (berkley db) or fsfs (file system file storage). bdb is not recommended by anyone so don't use it. fsfs just stores the data for each checkin inside a separate file that are then split into directories (defaults to 1000 revisions per directory). As long as you're using NTFS, it performs very well.
I guess you could call it "home brew", but it's not home brew in a bad way. Unlike bdb which corrupts itself if you look at it wrong, I've never had an issue with fsfs.
If you really want to mess around with it first you can create a repository on your workstation. If you use the file:// url scheme for the repository location then it doesn't require any sort of service running and you can just install the collabnet client+server package without "SVNSERVE" or "HTTP" checked in the options. Then:
If you install TortoiseSVN, you can then check out the empty repository by right clicking on an empty directory in explorer and choosing "SVN Checkout..." and using "file:///c:/temp/test" as your repository. From there, you can create files, add them to subversion, check stuff in, do whatever and see what it does to the repository.
The thing I can't stress enough with subversion is to make sure you've read and re-read the chapter on branching and merging in the red bean book. The biggest source of pain is not following the recommended practice. Make sure you've had a good play with some scratch repository and fully understand how to resolve merge conflicts and the like before really using it production (though it's going to be better than VSS no matter what you do). My favorite tool for solving merge conflicts is kdiff3 - it's the only thing I've found that actually shows what's really happening on a 3-way merge and is fully supported by Tortoise.
Dd
Subversion has two options for the way it stores the data. bdb (berkley db) or fsfs (file system file storage). bdb is not recommended by anyone so don't use it. fsfs just stores the data for each checkin inside a separate file that are then split into directories (defaults to 1000 revisions per directory). As long as you're using NTFS, it performs very well.
I guess you could call it "home brew", but it's not home brew in a bad way. Unlike bdb which corrupts itself if you look at it wrong, I've never had an issue with fsfs.
If you really want to mess around with it first you can create a repository on your workstation. If you use the file:// url scheme for the repository location then it doesn't require any sort of service running and you can just install the collabnet client+server package without "SVNSERVE" or "HTTP" checked in the options. Then:
Code: Select all
c:\temp> svnadmin create test
The thing I can't stress enough with subversion is to make sure you've read and re-read the chapter on branching and merging in the red bean book. The biggest source of pain is not following the recommended practice. Make sure you've had a good play with some scratch repository and fully understand how to resolve merge conflicts and the like before really using it production (though it's going to be better than VSS no matter what you do). My favorite tool for solving merge conflicts is kdiff3 - it's the only thing I've found that actually shows what's really happening on a 3-way merge and is fully supported by Tortoise.
Dd
-
- Grand Pontificator
- Posts: 3015
- Joined: Thu Mar 13, 2003 5:35 pm
Re: Version Control - Advice needed
I will RTFM for sure (and have a decent start already) and make it my bitch, but I don't really see us doing much branching/merging, for several reasons. We may be one of the best think tanks for the insurance industry but we're weak in modern development practices and most of the team still chafes under source safe even though we've been using it for 6 years. We will be using a small but important feature set. In fact, is there a way to disable multiple checkouts?
Yeah, I'll go with the file system based storage. The Berkely DB didn't look impressive so I'm glad you mentioned it because I might have second thoughts if I had to install it.
Bahd's cheat sheet is awesome, thanks for that
I wouldn't have any problem with non-standard ports on a web server, but I think I was misunderstanding how Subversive works with file transfers. I was somehow thinking I'd be accessing it with a browser (duh, windows explorer not internet explorer) so the weird URLs are fine because they'll be keyed into the client software and forgotten. If I can't make it brainless then we won't be able to switch, but even the COBOL guys know how to use windows explorer, though they might be more comfortable with a command line interface.
I'm really excited, though I haven't mentioned it to anyone. I'm going to get all my ducks in a row before I bring it to the boss, because I want him to take his checkbook out and buy me a server just for source code control and the monthly fees to have the server co-located. So I want to understand this thing inside and out so I'm prepared to answer all the questions that are going to come.
So far I think I'm good to go. I'm going to start downloading everything right now and will probably have it all installed tomorrow since I'm sick today. So off to eat a "special" brownie (since I don't smoke any more) and put on Excalibur which just came out in remastered 1080 blu-ray.
Thanks again, and I'll probably have some questions tomorrow.
Yeah, I'll go with the file system based storage. The Berkely DB didn't look impressive so I'm glad you mentioned it because I might have second thoughts if I had to install it.
Bahd's cheat sheet is awesome, thanks for that

I wouldn't have any problem with non-standard ports on a web server, but I think I was misunderstanding how Subversive works with file transfers. I was somehow thinking I'd be accessing it with a browser (duh, windows explorer not internet explorer) so the weird URLs are fine because they'll be keyed into the client software and forgotten. If I can't make it brainless then we won't be able to switch, but even the COBOL guys know how to use windows explorer, though they might be more comfortable with a command line interface.
I'm really excited, though I haven't mentioned it to anyone. I'm going to get all my ducks in a row before I bring it to the boss, because I want him to take his checkbook out and buy me a server just for source code control and the monthly fees to have the server co-located. So I want to understand this thing inside and out so I'm prepared to answer all the questions that are going to come.
So far I think I'm good to go. I'm going to start downloading everything right now and will probably have it all installed tomorrow since I'm sick today. So off to eat a "special" brownie (since I don't smoke any more) and put on Excalibur which just came out in remastered 1080 blu-ray.
Thanks again, and I'll probably have some questions tomorrow.
- Taxious
- Rum Guzzler
- Posts: 5056
- Joined: Fri Apr 18, 2003 10:16 am
- Location: Denver, CO
Re: Version Control - Advice needed
Mmm special brownies. Do you make them yourself or buy from a dispensary? I'm not sure about WA, but here in CO dispensaries have been popping up everywhere. I can't drive more than a couple blocks without seeing at least one sign like this:


Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
-
- Grand Pontificator
- Posts: 3015
- Joined: Thu Mar 13, 2003 5:35 pm
Re: Version Control - Advice needed
A friend makes them for me - cookies, brownies, corn muffins, etc. She really needs to get the dosage more consistent though because some times I eat two cookies and barely get a buzz and sometimes I eat half a cookie and I'm launched into fucking outer space. The wife recently started eating them too for the pain of her rheumatiod arthritis. She got high once in high school and threw up so she went all these years without trying it again. Now half a cookie at bed time and she cuts out all the sleeping medication and most of the pain medication. "Edibles" are also nice because there's no smell/sight of weed and there's no where near the same social stigma. She views it the same as medicine and swears she doesn't get a buzz - it just helps her sleep.
I decided I couldn't wait to play with Subversion, and I have my first question:
Can I mix and match the client and server tools? Like say the Collabnet server with Tortoise? The Ankh client looks nice too since I run VS 2008 soon to be 2010. First I want to get the "universal environment" that everyone can run.
Bahd's tutorial link has Tigris server with the Tortoise client and promises less than half hour install, so I'm off to try that first on a junk server 2k3 VM that I can keep rolling back until I find the environment that I like!
I decided I couldn't wait to play with Subversion, and I have my first question:
Can I mix and match the client and server tools? Like say the Collabnet server with Tortoise? The Ankh client looks nice too since I run VS 2008 soon to be 2010. First I want to get the "universal environment" that everyone can run.
Bahd's tutorial link has Tigris server with the Tortoise client and promises less than half hour install, so I'm off to try that first on a junk server 2k3 VM that I can keep rolling back until I find the environment that I like!
-
- Save a Koala, deport an Australian
- Posts: 17517
- Joined: Thu Jan 02, 2003 3:00 pm
- Location: Straya mate!
- Contact:
Re: Version Control - Advice needed
Yes. As long as everything you use is built from subversion 1.6 as a base (which all the tools you mentioned are) it works just fine.Freecare Spiritwise wrote:Can I mix and match the client and server tools? Like say the Collabnet server with Tortoise? The Ankh client looks nice too since I run VS 2008 soon to be 2010. First I want to get the "universal environment" that everyone can run.
Dd
-
- Grand Pontificator
- Posts: 3015
- Joined: Thu Mar 13, 2003 5:35 pm
Re: Version Control - Advice needed
Sweet. I've got Tigris server running on a server 2k3 VM and Tortoise running on a win xp VM and it seems to be functional with both the client and server.
Told it to run as a windows service per the tutorial which is a must.
Now I'm just starting off as a noob.
Told it to run as a windows service per the tutorial which is a must.
Now I'm just starting off as a noob.
-
- Save a Koala, deport an Australian
- Posts: 17517
- Joined: Thu Jan 02, 2003 3:00 pm
- Location: Straya mate!
- Contact:
Re: Version Control - Advice needed
Really, that's the wrong question to ask. A "checkout" in subversion is the same as a "get" in SourceSafe. You get a copy of the repository. From there you edit your files and then commit your changes and if someone else has changed things in the meantime then you get told about it and have to resolve any merge conflicts before you commit.In fact, is there a way to disable multiple checkouts?
You can "lock" a file, which prevents anyone else from checking in (a good idea for non-text files), but you really want to get the team educated into the idea that they don't need permission from the repository to change files but instead just need to be able to resolve conflicts when checking in or updating.
Dd
-
- Grand Pontificator
- Posts: 3015
- Joined: Thu Mar 13, 2003 5:35 pm
Re: Version Control - Advice needed
Ok, got it, thanks. It'll take some getting used to.
So there's no multiple locks? Does it show the locks similar to how source safe shows you your checked out files in red?
There's a couple things I liked about how source safe does the checkouts. First, I can see what my guys are working on and second, it's guaranteed there will be no conflicts because only one person can have a file checked out at once.
I can see the wisdom in how Subversion does it but still, it's nice to know who's working on which files. Oh well, I can live with that.
So ok, every file in the project is writable then? It'll be interesting to see how the Ankh plugin works then, since I thought that visual studio's version control integration used the "checkout" paradigm that source safe uses, or does Ankh simulate that?
...so much to learn, and feel free to tell me to RTFM
EDIT: Ahh ok, I get it. It's lock/modify/unlock versus copy/modify/merge. Looks like Subversive allows for either paradigm. Hmmm, I'll have to think about this lol. I'm liking the book so far.
So there's no multiple locks? Does it show the locks similar to how source safe shows you your checked out files in red?
There's a couple things I liked about how source safe does the checkouts. First, I can see what my guys are working on and second, it's guaranteed there will be no conflicts because only one person can have a file checked out at once.
I can see the wisdom in how Subversion does it but still, it's nice to know who's working on which files. Oh well, I can live with that.
So ok, every file in the project is writable then? It'll be interesting to see how the Ankh plugin works then, since I thought that visual studio's version control integration used the "checkout" paradigm that source safe uses, or does Ankh simulate that?
...so much to learn, and feel free to tell me to RTFM

EDIT: Ahh ok, I get it. It's lock/modify/unlock versus copy/modify/merge. Looks like Subversive allows for either paradigm. Hmmm, I'll have to think about this lol. I'm liking the book so far.
-
- Grand Pontificator
- Posts: 3015
- Joined: Thu Mar 13, 2003 5:35 pm
Re: Version Control - Advice needed
Reading the manual, playing with the command line tools, playing with the Tortoise client - this is going really well and I'm already working with my test repository on my test server.
So far only two issues I see:
1. Getting the guys and gals to think a little differently from source safe and migrating some projects over to the new system in such as way that's not disruptive to the troops.
2. If I move the repository off site then the performance multiplies for me but slows down for everyone in the office since they're using source safe over the LAN. I guess just switching to Subversion should be good enough since the T1 gets saturated, times out the VPN and hoses source safe.
I assume I can set the server timeouts somewhere to really big values in case our network is having a bad day?
Sheesh, my residential Comcast is like 12/2 (I'm on the cheapest plan) and a T1 is what, 1.5 symmetrical? Having to interact with my office through that slow connection is getting on my last nerve.
So far only two issues I see:
1. Getting the guys and gals to think a little differently from source safe and migrating some projects over to the new system in such as way that's not disruptive to the troops.
2. If I move the repository off site then the performance multiplies for me but slows down for everyone in the office since they're using source safe over the LAN. I guess just switching to Subversion should be good enough since the T1 gets saturated, times out the VPN and hoses source safe.
I assume I can set the server timeouts somewhere to really big values in case our network is having a bad day?
Sheesh, my residential Comcast is like 12/2 (I'm on the cheapest plan) and a T1 is what, 1.5 symmetrical? Having to interact with my office through that slow connection is getting on my last nerve.