How do you like using TFS?
My company is rolling out TFS 2008. It integrates with our current IntelliJ IDEA. We will be migrating from SVN.
Is this going to make my life better?
How do you like using TFS?
My company is rolling out TFS 2008. It integrates with our current IntelliJ IDEA. We will be migrating from SVN.
Is this going to make my life better?
If you use as much as the work items, build system, reporting, portal, and process templates, it can help a lot with getting a project done. There is a bit of a learning curve, though.
Hmm, that is hard to say for you. I use it with VS.NEt but i can still give some feedback.
I like the work item tracking, and its integration with source control. The source control itsel is quite robust. I am not sure what front end for it you will be using, but I use the integration with VS.NEt for myself and we use the Web Access frontend for non devs.
I like the integration with Sharepoint as it allows me to use a lot of Sharepoint and even TFS features (such as bug trcaking) from Office application.
One drawback is the configuring and security. It can be a pain, but once you get used to it and overcome any hurdles, its quite nice.
there are other pluses that related to vs.net that i wont mention because of your use for it.
I had recently made another post on some hilites here.
In my opinion your life will be a bit worse.
I have big problem with the TFS concept of having to check out before being able to commit changes. I'm being told that it's a safety mechanism but I find it hard to understand.
This makes using systems outside a IDE that will not checkout for me when I start edit difficult. For example I'm using Fitnesse. I would like to have my Fitnesse tests in the repository. Fitnesse creates new/changes textfiles in a directory structure´to enable this I have to checkout all files before start working with Fitnesse. And after I have to run a query from the TFS sourcecontrol explorer to find all new pages created during the session add them and then check in(commit) everything.
This was much easier with SVN together with TortoiseSVN.
There is a project @ codeplex called LizardTF that might help me here.
Its okay in my books, but just that. I personally find the way they designed their version control over SVN's annoying (use of read/write attributes over separate tracking files)
Will going from SVN to TFS make your life better? Maybe, maybe not.
TFS is miles better than Microsoft's previous source control offering, Visual SourceSafe. TFS at least has a proper database back end, atomic commits, robust transport, all those things that VSS lacked. It delivers the level of functionality that is necessary to compete with other source control systems such as SVN.
But, TFS is not just a source control system. it has build management, work item tracking, the kitchen sink. It has more frills than a doily, and the main issue for improving it is not features, it is usability and flexibility. In short, it's a bit of a beast. The 2008 version is much better than the initial 2005 version for these additional functions. For just pure source control, I think SVN is still more flexible and has more features.
Also TFS is not cheap, nor is it trivial to install and configure. This is in total contrast with SVN.
If you are not using Visual Studio, which has excellent TFS integration (and no out of the box SVN integration), and you only want source control, not work item tracking or .net builds, then you have no reason to move to TFS and will likely find that there are drawbacks when your SVN way of doing things isn't supported.
For instance, how happy would you be with having to "check out" a file before you can edit it? The IDE may make this automatic, but it's still part of the mechanism. Do you use SVN's feature of being able to do everything bar check-in while off-line? e.g. working on a laptop while off the network at home/on a train/plane/etc. TFS does not have this, it can only be used while connected to the server.
If, however, you do have TFS IDE integration and need more than just source control (and haven't used complimentary tools for these like traq that can be connected to SVN), then you may find some things to like.
You mentioned "IntelliJ" in your question. Is this project in Java? I'm not sure why TFS is on the table if that is the case. In general, there is a cost to moving from one system to another, so the new system must have a non-trivial advantage in order for the move to make sense. Moving to another system that is only "as good" doesn't make sense. Has your management given a reason? is there some feature that they really want? Is this a political decision - is TFS a corporate standard for a company that does both .net and Java? In that case, there is a good argument that SVN is "part of the java toolchain" and should be kept.
TFS is very solid but it requires some getting used to in the first couple of months. Especially if you and your team have Svn background.
The good thing about TFS is that it is still in very active development and exciting new features appear all the time - see the TFS Power Tools.
My 2 cents:
I'm used before Clearcase and SVN (also I have some experience as a Clearcase admin), and now I have to implement TFS (for another company).
There are big differences:
witfields view /s:sa2 Requirement
witexport /t sa2 /p CMMI-TEST /n Requirement
tfpt destroywitd /server:sa2 /project:"CMMI-TEST" /workitemtype:Risk
A big drawback is mentioned above: you have to checout a file through VS IDE if you want to edit it. The integration of TFS client with Windows is rather strange - you have no option to checkout/checkin a file outside VS IDE but Windows doesn't allow you to see the content of a directory under TFS source control (mapped on your box)
Migration between a test server and a production server is nearly impossible
The documentation is pretty sparse, there is a book about TFS that should came on the market in november/december 2008, and all you can find on MSDN and MS sites are commercial bullshit.
So if you have no very strong reasons (I can't find any, but you know better) to migrate, don't do it.