In my current company we are using StarTeam as the source control choice, I wouldn't classify it as a great source control tool but certainly better then Visual Source Safe (VSS) and PVCS Version Control that I have been using in my previous companies.
One of the best thing StarTeam offers is the ability to integrate third party file comparison/merge tools to be used from within StarTeam. I have been using Winmerge for some time as the choice of tool for Merge/Difference comparison. Refer to Jon Galloway's blog for good reference on Integrating WinMerge with StarTeam.
I have recently started using DiffMerge as the tool of choice for doing Comparison/Merging from within StarTeam. Please follow the steps mentioned below to use DiffMerge for comparison/merge from within StarTeam.
1. GoTo "Tools" Menu -> "Personal Options" SubMenu
2. GoTo "File" Tab
3. Click on "Alternate Applications"
4. Setting DiffMerge as External Application for Merge
a. In Merge Utility -> Give the name of the path where DiffMerge.Exe is located.
b. Options -> /r=$resultfile $usertip $basefile $branchtip /t1="Local Version" /t2="Merged File" /t3="StarTeam Version"
5. Setting DiffMerge as External Application for Comparison
a. In Comparison Utility -> Give the name of the path where DiffMerge.Exe is located.
b. Options -> $file1 $file2 /t1="StarTeam Version" /t2="Local Version"
Now you can start using DiffMerge from within StarTeam