<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en"><title type="html">michal.Log</title><subtitle type="html" /><id>http://blogs.msdn.com/michalma/atom.xml</id><link rel="alternate" type="text/html" href="http://blogs.msdn.com/michalma/default.aspx" /><link rel="self" type="application/atom+xml" href="http://blogs.msdn.com/michalma/atom.xml" /><generator uri="http://communityserver.org" version="2.1.61025.2">Community Server</generator><updated>2008-01-05T19:31:00Z</updated><entry><title>Visual Basic problems with TFS, when referencing files outside of the project</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/michalma/archive/2009/06/16/visual-basic-problems-with-tfs-when-referencing-files-outside-of-the-project.aspx" /><id>http://blogs.msdn.com/michalma/archive/2009/06/16/visual-basic-problems-with-tfs-when-referencing-files-outside-of-the-project.aspx</id><published>2009-06-17T00:14:00Z</published><updated>2009-06-17T00:14:00Z</updated><content type="html">&lt;P&gt;I was asked recently to investigate problem when using VB6 and TFS Msscci Provider. We found out a limitation, that is not really surprising, but is still worth documenting. &lt;/P&gt;
&lt;P&gt;The code base looks like this:&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Calibri size=3&gt;Source&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SharedCode&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Class1.cls&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Project 1&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Project1.vpb&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Form1.frm&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;There are a few problems with TFS integration in this environment:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;If Source directory is not mapped, we will ask you to map only Source\Project1 (this is root of the project and we know only that, we are not aware of Class1).&lt;/LI&gt;
&lt;LI&gt;If SharedCode is not mapped we will fail to add any file except of Project1.vpb to source control&lt;/LI&gt;
&lt;LI&gt;Creating workspace mappings outside of VB (with Team Explorer or tf.exe) that would map whole Source directory will solve above problems.&lt;/LI&gt;
&lt;LI&gt;"Create project from Team Foundation" will never work seamlessly in this situation. Even if you do #3 and successfully add whole project to scc, and you have correct mappings in the workspace where you are doing "Create project ..." we will not download Class1. You need to download it later with tf.exe/Team Explorer. After that it should work fine.&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;Hope this will help you when dealing with more complex code base and a vb6+tfs mix!&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9763163" width="1" height="1"&gt;</content><author><name>michalma</name><uri>http://blogs.msdn.com/members/michalma.aspx</uri></author><category term="TFS Msscci Provider" scheme="http://blogs.msdn.com/michalma/archive/tags/TFS+Msscci+Provider/default.aspx" /></entry><entry><title>"Get latest on checkout" in a mixed environment</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/michalma/archive/2009/06/16/get-latest-on-checkout-in-a-mixed-environment.aspx" /><id>http://blogs.msdn.com/michalma/archive/2009/06/16/get-latest-on-checkout-in-a-mixed-environment.aspx</id><published>2009-06-16T23:56:00Z</published><updated>2009-06-16T23:56:00Z</updated><content type="html">&lt;P&gt;Today I had to test behavior of our less commonly used feature, get latest on checkout, in a mixed VSTS 2008 + TFS 2008 environment. Hopefully this blog post will save the time next person who wonders if this should work (It took me 3 hours to update my VS2005&amp;nbsp;hyperv image before&amp;nbsp;I could actually try it).&lt;/P&gt;
&lt;P&gt;First of all, a little about the feature. We resisted a long time before we gave up and implemented it in TFS 2008. We thought that it doesn't go well with TFS philosophy by we were convinced&amp;nbsp;that we are wrong&amp;nbsp;:) It causes client to download latest version of the file before pending edit in single web server call. It's both client side and server side setting.&lt;/P&gt;
&lt;P&gt;Ok, now the actual finding. You &lt;STRONG&gt;&lt;U&gt;need&lt;/U&gt;&lt;/STRONG&gt; both VSTS2008 RTM and TFS 2008 RTM at the minimum to use gloc. If server is TFS 2008 and has this option turned on, but client is 2005, it will not take advantage of it.&lt;/P&gt;
&lt;P&gt;Hope this helps!&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9763127" width="1" height="1"&gt;</content><author><name>michalma</name><uri>http://blogs.msdn.com/members/michalma.aspx</uri></author><category term="Team Foundation Server" scheme="http://blogs.msdn.com/michalma/archive/tags/Team+Foundation+Server/default.aspx" /></entry><entry><title>Version Control API changes in TFS 2010 - part II</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/michalma/archive/2009/06/16/version-control-api-changes-in-tfs-2010-part-ii.aspx" /><id>http://blogs.msdn.com/michalma/archive/2009/06/16/version-control-api-changes-in-tfs-2010-part-ii.aspx</id><published>2009-06-16T23:46:00Z</published><updated>2009-06-16T23:46:00Z</updated><content type="html">&lt;P&gt;Yesterday I was talking about changes we did to itemId and pendingChangeId in TFS 2010. Today I want to list other changes, related to various part of VC api:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;You should be careful when using &lt;SPAN style="FONT-SIZE: 11pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Calibri','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;DiffItemVersionedFile class, especially if you&amp;nbsp;use constructor that requires&amp;nbsp;itemId. Much safer thing to do is to call &lt;SPAN style="FONT-SIZE: 11pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Calibri','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;Difference.&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 11pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Calibri','sans-serif'; mso-fareast-font-family: Calibri; mso-bidi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA; mso-ascii-theme-font: minor-latin; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-bidi"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 11pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Calibri','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;CreateTargetDiffItem. It will use QueryHistory under the covers to find correct item, but it has optimizations for most common cases that will avoid it.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;SPAN style="FONT-SIZE: 11pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Calibri','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;&lt;SPAN style="FONT-SIZE: 11pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Calibri','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 11pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Calibri','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;&lt;SPAN style="FONT-SIZE: 11pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Calibri','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;&lt;SPAN style="mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;VersionControlServer.&lt;/SPAN&gt; &lt;SPAN style="mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;GetBranchHistory returns objects that are result of both branching and renaming items. BranchRelative.BranchToChangeType contains information about the operation that created given branch, however this is not recommended to try mimicking Orcas behavior by pruning results of GetBranchHistory. In some cases, like cycles in renames, it’s not possible. Instead new method VersionControlServer.&lt;/SPAN&gt; &lt;SPAN style="mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;QueryMergeRelationships should be used, which returns all items that have merge relationship to the specified item (i.e. not only branch relationship, but also merge relationship).&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;SPAN style="FONT-SIZE: 11pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Calibri','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;&lt;SPAN style="FONT-SIZE: 11pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Calibri','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; mso-bidi-font-size: 11.0pt"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;Labels in TFS 2010 include deleted items, in oppose to labels in TFS 2005 and TFS 2008&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;SPAN style="FONT-SIZE: 11pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Calibri','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;&lt;SPAN style="FONT-SIZE: 11pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Calibri','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;&lt;SPAN style="mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;VersionControlServer.GetItems and Workspace.GetExtendedItems do not returns items that were deleted as part of rename, unless GetItemsOptions.&lt;/SPAN&gt; &lt;SPAN style="mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;IncludeSourceRenames was specified&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 11pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Calibri','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;&lt;SPAN style="FONT-SIZE: 11pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Calibri','sans-serif'; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;&lt;SPAN style="mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: 'Times New Roman'; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;Enjoy!&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;OL&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/OL&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9763099" width="1" height="1"&gt;</content><author><name>michalma</name><uri>http://blogs.msdn.com/members/michalma.aspx</uri></author><category term="Team Foundation Server" scheme="http://blogs.msdn.com/michalma/archive/tags/Team+Foundation+Server/default.aspx" /><category term="Rosario" scheme="http://blogs.msdn.com/michalma/archive/tags/Rosario/default.aspx" /></entry><entry><title>Version Control API changes in TFS 2010 - part I</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/michalma/archive/2009/06/15/version-control-api-changes-in-tfs-2010-part-i.aspx" /><id>http://blogs.msdn.com/michalma/archive/2009/06/15/version-control-api-changes-in-tfs-2010-part-i.aspx</id><published>2009-06-16T02:44:00Z</published><updated>2009-06-16T02:44:00Z</updated><content type="html">&lt;P&gt;As Matt writes in his &lt;A class="" href="http://blogs.msdn.com/mitrik/archive/2009/05/28/changing-to-slot-mode-in-tfs-2010-version-control.aspx" mce_href="http://blogs.msdn.com/mitrik/archive/2009/05/28/changing-to-slot-mode-in-tfs-2010-version-control.aspx"&gt;post&lt;/A&gt;, the way version control behaves in TFS 2010 has changed in a few significant ways.&amp;nbsp;Our team&amp;nbsp;was responsible for making the client code&amp;nbsp;updates in response to those server changes and I tried to write down lessons we have learned.&lt;/P&gt;
&lt;P&gt;First of all - itemId. Before, it was a unique identification of an item. It was the same across all renames, deletes and undeletes. Now, it's not:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;it changes during rename&lt;/LI&gt;
&lt;LI&gt;there can be two items with the same itemId, when you have rename A-&amp;gt;B and add A in the same workspace&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;When we are dealing with PendingChange objects, the helpful fact is that PendingChangeId still remains unique, so it can be used for indexing instead of itemId, when we are dealing with just pending changes. Please keep in mind however that Chandru wants to get rid of PendingChangeId as well :) Other property we can use to identify pending changes is target server path (ServerPath) which is unique in the given point of time. SourceServerPath is not unique.&lt;/P&gt;
&lt;P&gt;PendingChangeId has, however, also changed a little. It's no longer indexed on the server, so calling VersionControlServer.GetPendingChange[s] is very discouraged (and can throw exception). Instead client needs to use QueryPendingSets/QueryShelvedChanges or Workspace.GetPendingChanges.&lt;/P&gt;
&lt;P&gt;If your tool needs to track item across renames, VersionControlServer.QueryHistory is your best friend. Please keep in mind that it can't be recursive (it will be always slot mode then). Remember that you can specify versionFrom, versionTo and max number of records to return. The call should be quick if you are requesting only single changeset, just before item was renamed - version does not need to be between versionFrom and versionTo (&lt;A href="http://msdn.microsoft.com/en-us/library/bb138961.aspx"&gt;http://msdn.microsoft.com/en-us/library/bb138961.aspx&lt;/A&gt;)&lt;/P&gt;
&lt;P&gt;Those are the biggest changes,&lt;A class="" href="http://blogs.msdn.com/michalma/archive/2009/06/16/version-control-api-changes-in-tfs-2010-part-ii.aspx" mce_href="http://blogs.msdn.com/michalma/archive/2009/06/16/version-control-api-changes-in-tfs-2010-part-ii.aspx"&gt; in the next blog post&lt;/A&gt; I will talk about other changes, less used but still interesting :)&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9756625" width="1" height="1"&gt;</content><author><name>michalma</name><uri>http://blogs.msdn.com/members/michalma.aspx</uri></author><category term="Team Foundation Server" scheme="http://blogs.msdn.com/michalma/archive/tags/Team+Foundation+Server/default.aspx" /><category term="Rosario" scheme="http://blogs.msdn.com/michalma/archive/tags/Rosario/default.aspx" /></entry><entry><title>Using tf.exe in PowerShell ISE or other custom environments</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/michalma/archive/2009/01/19/using-tf-exe-in-powershell-ise-or-other-custom-environments.aspx" /><id>http://blogs.msdn.com/michalma/archive/2009/01/19/using-tf-exe-in-powershell-ise-or-other-custom-environments.aspx</id><published>2009-01-19T20:35:00Z</published><updated>2009-01-19T20:35:00Z</updated><content type="html">&lt;P&gt;Recently a few folks from our and other team tried working with TFS inside PowerShell ISE (&lt;A href="http://blogs.microsoft.co.il/blogs/scriptfanatic/archive/2008/12/30/windows-powershell-integrated-scripting-environment-ise.aspx"&gt;http://blogs.microsoft.co.il/blogs/scriptfanatic/archive/2008/12/30/windows-powershell-integrated-scripting-environment-ise.aspx&lt;/A&gt;).&lt;BR&gt;What they discovered is that tf.exe thinks that its output is redirected and switches to noprompt mode. Which means that running&lt;BR&gt;tf.exe checkin&lt;/P&gt;
&lt;P&gt;will check in the code instead of bringing up UI. Ouch.&lt;BR&gt;The problem is that ISE is really redirecting the output of tf.exe in order to display it. tf.exe is trying to be smart and suppress UI if it detects it. Fortunately there is easy workaround since TFS 2008.&lt;BR&gt;If you set environment variable:&lt;BR&gt;TFS_IGNORESTDOUTREDIRECT=1&lt;/P&gt;
&lt;P&gt;We will stop detecting output redirection. You need to add /noprompt to force no ui mode.&lt;/P&gt;
&lt;P&gt;Hope this helps :)&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9340411" width="1" height="1"&gt;</content><author><name>michalma</name><uri>http://blogs.msdn.com/members/michalma.aspx</uri></author><category term="Team Foundation Server" scheme="http://blogs.msdn.com/michalma/archive/tags/Team+Foundation+Server/default.aspx" /><category term="TFS2008" scheme="http://blogs.msdn.com/michalma/archive/tags/TFS2008/default.aspx" /></entry><entry><title>Resolve improvements in Dev10 – Server and Target edits</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/michalma/archive/2009/01/10/resolve-improvements-in-dev10-server-and-target-edits.aspx" /><id>http://blogs.msdn.com/michalma/archive/2009/01/10/resolve-improvements-in-dev10-server-and-target-edits.aspx</id><published>2009-01-11T03:34:00Z</published><updated>2009-01-11T03:34:00Z</updated><content type="html">&lt;P&gt;&lt;SPAN class=Apple-style-span style="WORD-SPACING: 0px; FONT: 13px arial; TEXT-TRANSFORM: none; COLOR: rgb(0,0,0); TEXT-INDENT: 0px; WHITE-SPACE: normal; LETTER-SPACING: normal; BORDER-COLLAPSE: separate; orphans: 2; widows: 2; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0"&gt;As you could notice in CTP1 or CTP2, new Resolve Dialog displays detailed information about selected conflict. This information is partially calculated on the background and can involve some time consuming operation. Right now they are:&lt;/SPAN&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;SPAN class=Apple-style-span style="WORD-SPACING: 0px; FONT: 13px arial; TEXT-TRANSFORM: none; COLOR: rgb(0,0,0); TEXT-INDENT: 0px; WHITE-SPACE: normal; LETTER-SPACING: normal; BORDER-COLLAPSE: separate; orphans: 2; widows: 2; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0"&gt;&lt;/SPAN&gt;&lt;SPAN class=Apple-style-span style="WORD-SPACING: 0px; FONT: 13px arial; TEXT-TRANSFORM: none; COLOR: rgb(0,0,0); TEXT-INDENT: 0px; WHITE-SPACE: normal; LETTER-SPACING: normal; BORDER-COLLAPSE: separate; orphans: 2; widows: 2; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0"&gt;attempt to merge the content - we say if there are content change in both source and target, if they can be automatically automerged etc.&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;SPAN class=Apple-style-span style="WORD-SPACING: 0px; FONT: 13px arial; TEXT-TRANSFORM: none; COLOR: rgb(0,0,0); TEXT-INDENT: 0px; WHITE-SPACE: normal; LETTER-SPACING: normal; BORDER-COLLAPSE: separate; orphans: 2; widows: 2; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0"&gt;query the history to display edits on the server/target branch. Right now we display list of last 2 changes. This includes their numbers as links (clicking one of them brings up changeset dialog) and tooltip with changeset number , owner and comment&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;SPAN class=Apple-style-span style="WORD-SPACING: 0px; FONT: 13px arial; TEXT-TRANSFORM: none; COLOR: rgb(0,0,0); TEXT-INDENT: 0px; WHITE-SPACE: normal; LETTER-SPACING: normal; BORDER-COLLAPSE: separate; orphans: 2; widows: 2; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0"&gt;&amp;nbsp;If you can think of any other analysis that would be useful and that can be calculated for the conflict - let us know!&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9304957" width="1" height="1"&gt;</content><author><name>michalma</name><uri>http://blogs.msdn.com/members/michalma.aspx</uri></author><category term="Rosario" scheme="http://blogs.msdn.com/michalma/archive/tags/Rosario/default.aspx" /></entry><entry><title>Resolve improvements in Dev10 – Automerge All part2</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/michalma/archive/2009/01/10/resolve-improvements-in-dev10-automerge-all-part2.aspx" /><id>http://blogs.msdn.com/michalma/archive/2009/01/10/resolve-improvements-in-dev10-automerge-all-part2.aspx</id><published>2009-01-11T03:31:00Z</published><updated>2009-01-11T03:31:00Z</updated><content type="html">&lt;SPAN class=Apple-style-span style="WORD-SPACING: 0px; FONT: 13px arial; TEXT-TRANSFORM: none; COLOR: rgb(0,0,0); TEXT-INDENT: 0px; WHITE-SPACE: normal; LETTER-SPACING: normal; BORDER-COLLAPSE: separate; orphans: 2; widows: 2; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0"&gt;TFS always creates conflict when rename is involved, even if it's only on server/source branch. We expanded Automerge All, so it can automatically resolve those conflicts. We exclude from this, conflicts on folders, as those are rare and user should review them.&lt;BR&gt;If you can think of other ways of expanding "Automerge All", please let us know - sometimes a few hours of work invested in the tool can save days of work spent duirng big merges :)&lt;/SPAN&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9304952" width="1" height="1"&gt;</content><author><name>michalma</name><uri>http://blogs.msdn.com/members/michalma.aspx</uri></author><category term="Rosario" scheme="http://blogs.msdn.com/michalma/archive/tags/Rosario/default.aspx" /></entry><entry><title>Resolve improvements in Dev10 – Automerge All</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/michalma/archive/2009/01/05/resolve-improvements-in-dev10-automerge-all.aspx" /><id>http://blogs.msdn.com/michalma/archive/2009/01/05/resolve-improvements-in-dev10-automerge-all.aspx</id><published>2009-01-05T22:07:00Z</published><updated>2009-01-05T22:07:00Z</updated><content type="html">&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;SPAN style="FONT-SIZE: 8pt; COLOR: black; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;We heard that some users are afraid of performing "Automerge All" operation. The thinking here is that TFS (or any) merge engine is not 100% bulletproof. If method foo was added at the beginning of the file in the source branch and at the end of the file at the end of the file, automerge will succeed but build will be broken soon after. &lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;SPAN style="FONT-SIZE: 8pt; COLOR: black; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;As a way to mitigate this, we allow user to specify what kind of content change should be resolved:&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpFirst style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; LINE-HEIGHT: normal; mso-list: l0 level1 lfo1; mso-add-space: auto"&gt;&lt;SPAN style="FONT-SIZE: 8pt; COLOR: black; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: Arial"&gt;&lt;SPAN style="mso-list: Ignore"&gt;1.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 8pt; COLOR: black; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;Only conflicts that have content change in the local workspace or in the target branch&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpMiddle style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; LINE-HEIGHT: normal; mso-list: l0 level1 lfo1; mso-add-space: auto"&gt;&lt;SPAN style="FONT-SIZE: 8pt; COLOR: black; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: Arial"&gt;&lt;SPAN style="mso-list: Ignore"&gt;2.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 8pt; COLOR: black; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;Conflicts that have content change in the local workspace/target branch OR on the server/source branch&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraphCxSpLast style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; LINE-HEIGHT: normal; mso-list: l0 level1 lfo1; mso-add-space: auto"&gt;&lt;SPAN style="FONT-SIZE: 8pt; COLOR: black; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: Arial"&gt;&lt;SPAN style="mso-list: Ignore"&gt;3.&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 8pt; COLOR: black; FONT-FAMILY: 'Arial','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;All conflicts that TFS engine can merge content of (original behavior)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;SPAN class=apple-style-span&gt;&lt;SPAN style="FONT-SIZE: 8pt; COLOR: black; LINE-HEIGHT: 115%; FONT-FAMILY: 'Arial','sans-serif'"&gt;The type of the content change is also included in the conflict description.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 8pt; COLOR: black; LINE-HEIGHT: 115%; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;BR&gt;&lt;SPAN class=apple-style-span&gt;Personally I always perform AutoMerge All (2) to rule out all simple conflicts and then resolve other conflicts one by one.&lt;/SPAN&gt;&lt;BR style="mso-special-character: line-break"&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 10pt"&gt;&lt;SPAN style="FONT-SIZE: 8pt; COLOR: black; LINE-HEIGHT: 115%; FONT-FAMILY: 'Arial','sans-serif'"&gt;This change is available in CTP2.&lt;/P&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9282752" width="1" height="1"&gt;</content><author><name>michalma</name><uri>http://blogs.msdn.com/members/michalma.aspx</uri></author><category term="Rosario" scheme="http://blogs.msdn.com/michalma/archive/tags/Rosario/default.aspx" /></entry><entry><title>Resolve improvements in next version of TFS</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/michalma/archive/2008/05/04/resolve-improvements-in-next-version-of-tfs.aspx" /><id>http://blogs.msdn.com/michalma/archive/2008/05/04/resolve-improvements-in-next-version-of-tfs.aspx</id><published>2008-05-05T04:50:00Z</published><updated>2008-05-05T04:50:00Z</updated><content type="html">&lt;P&gt;As Brian said long time ago in his blog (&lt;A href="http://blogs.msdn.com/bharry/archive/2008/02/01/a-new-spec-on-conflict-resolution-is-available.aspx" mce_href="http://blogs.msdn.com/bharry/archive/2008/02/01/a-new-spec-on-conflict-resolution-is-available.aspx"&gt;http://blogs.msdn.com/bharry/archive/2008/02/01/a-new-spec-on-conflict-resolution-is-available.aspx&lt;/A&gt;), and Mario described in the spec (&lt;A href="http://download.microsoft.com/download/e/0/e/e0ed04ec-bf14-4dd6-b5ad-22094b128498/Resolve-Improvements.xps" mce_href="http://download.microsoft.com/download/e/0/e/e0ed04ec-bf14-4dd6-b5ad-22094b128498/Resolve-Improvements.xps"&gt;http://download.microsoft.com/download/e/0/e/e0ed04ec-bf14-4dd6-b5ad-22094b128498/Resolve-Improvements.xps&lt;/A&gt;) we are actively working on improving resolving version control conflicts in new version of TFS. The biggest highlights are already described in those posts/blogs (like non modal experience). What I'd like to do is to list&amp;nbsp;a few small, cool features which I hope can save a lot of frustration, especially when working with big merges. First of all, we finally provide a history both for Source and Target when dealing with conflicts caused by merging between 2 branches. We also provide Annotate, when inside Visual Studio, adn when it's merge conflict you get Annotate both for Source and Target. I must say that when dealing with a large number of conflicts, it's great to work inside VS, with maximized Conflicts window, with History and Annotate as tabbed documents (nothing is modal).&lt;/P&gt;
&lt;P&gt;The other small but useful feature I'm playing with is ability to resolve multiple conflicts with external merge tool in a bulk. You select a list of conflicts and click "Merge changes with Merge Tool". We stat merge tool for the first conflict and queue the rest of them. As soon as you resolve one conflict,&amp;nbsp; we start a tool for the next one. If you use the default diffmerge, you don't need to click any prompts or select conflicts -just pick the right content changes ;)&lt;/P&gt;
&lt;P&gt;If after reading the spec you can think of any such little (or not so little) neat feature, please share them and we'll be happy to discuss them inside our feature crew.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8459280" width="1" height="1"&gt;</content><author><name>michalma</name><uri>http://blogs.msdn.com/members/michalma.aspx</uri></author><category term="Rosario" scheme="http://blogs.msdn.com/michalma/archive/tags/Rosario/default.aspx" /></entry><entry><title>Msscci 2008 with MS Access 2007</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/michalma/archive/2008/04/15/msscci-2008-with-ms-access-2007.aspx" /><id>http://blogs.msdn.com/michalma/archive/2008/04/15/msscci-2008-with-ms-access-2007.aspx</id><published>2008-04-15T21:55:00Z</published><updated>2008-04-15T21:55:00Z</updated><content type="html">&lt;P&gt;I have played a little with MS Access 2007, verifying that it's working with TFS Msscci 2008. In order to get SCC integration, you need to install &lt;A class="" href="http://www.microsoft.com/downloads/details.aspx?FamilyId=D96A8358-ECE4-4BEE-A844-F81856DCEB67&amp;amp;displaylang=en" mce_href="http://www.microsoft.com/downloads/details.aspx?FamilyId=D96A8358-ECE4-4BEE-A844-F81856DCEB67&amp;amp;displaylang=en"&gt;Access Developer Extension&lt;/A&gt; - a add-in that allows Access to use any Msscci provider (and a few other goodies).&lt;/P&gt;
&lt;P&gt;Access does not allow you to change SCC provider, so if you have installed a few of them on your machine, you may check my other blog post: &lt;A href="http://blogs.msdn.com/michalma/archive/2006/03/01/541255.aspx"&gt;http://blogs.msdn.com/michalma/archive/2006/03/01/541255.aspx&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Everything seems to be working just fine - you can add tables, forms and queries to TFS, display History, Properties etc. The Source Control toolbar looks really cool.&lt;/P&gt;
&lt;P&gt;The unfortunate problem, which&amp;nbsp;we plan to fix&amp;nbsp;in the next release of TFS Msscci is the fact that Access (the same way as VB6) verifies if item is checked out by somebody else, before allowing user to perform checkout. The problem is that we tell that file is checked out even if the pending change exists only in the shelveset, not in the actual workspace. This makes using Access and shelvesets in the same time very hard.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8398076" width="1" height="1"&gt;</content><author><name>michalma</name><uri>http://blogs.msdn.com/members/michalma.aspx</uri></author><category term="TFS2008" scheme="http://blogs.msdn.com/michalma/archive/tags/TFS2008/default.aspx" /><category term="TFS Msscci Provider" scheme="http://blogs.msdn.com/michalma/archive/tags/TFS+Msscci+Provider/default.aspx" /></entry><entry><title>Msscci with RoboHelp</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/michalma/archive/2008/04/03/msscci-with-robohelp.aspx" /><id>http://blogs.msdn.com/michalma/archive/2008/04/03/msscci-with-robohelp.aspx</id><published>2008-04-04T00:16:00Z</published><updated>2008-04-04T00:16:00Z</updated><content type="html">&lt;P&gt;Yet another tool that should be working with TFS Msscci Provider is RoboHelp. The reported problem is "Server Busy" error message display over Msscci dialog.&lt;/P&gt;
&lt;P&gt;The solution for this (until release of the new provider) is to create registry file (robofix.reg) with the following content:&lt;/P&gt;
&lt;P&gt;Windows Registry Editor Version 5.00&lt;/P&gt;
&lt;P&gt;[HKEY_LOCAL_MACHINE\Software\Microsoft\Team Foundation Server MSSCCI Provider\Settings\RoboHelp]&lt;BR&gt;[HKEY_LOCAL_MACHINE\Software\Microsoft\Team Foundation Server MSSCCI Provider\Settings\RoboHelp\ROBOHTML.EXE]&lt;BR&gt;"issues"=dword:000000D1&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;Then run it. &lt;BR&gt;Of course this script is provided "as is". If it does not help, please remove this entry from your registry.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8355044" width="1" height="1"&gt;</content><author><name>michalma</name><uri>http://blogs.msdn.com/members/michalma.aspx</uri></author><category term="Team Foundation Server" scheme="http://blogs.msdn.com/michalma/archive/tags/Team+Foundation+Server/default.aspx" /><category term="TFS Msscci Provider" scheme="http://blogs.msdn.com/michalma/archive/tags/TFS+Msscci+Provider/default.aspx" /></entry><entry><title>New features in next release of TF</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/michalma/archive/2008/01/20/new-features-in-next-release-of-tf.aspx" /><id>http://blogs.msdn.com/michalma/archive/2008/01/20/new-features-in-next-release-of-tf.aspx</id><published>2008-01-20T22:34:00Z</published><updated>2008-01-20T22:34:00Z</updated><content type="html">&lt;p&gt;Brian &lt;a href="http://blogs.msdn.com/bharry/archive/2008/01/16/new-features-to-understand-branching-merging.aspx" mce_href="http://blogs.msdn.com/bharry/archive/2008/01/16/new-features-to-understand-branching-merging.aspx"&gt;published&lt;/a&gt; a few screen shots of tools that we are working on right now for the next major release of TFS (not SP1). The Branch Visualization (Scenario 2 and 3) are amazing but right now my personal favorite is&lt;a href="http://blogs.msdn.com/blogfiles/bharry/WindowsLiveWriter/Newfeaturestounderstandbranchingmerging_B6CB/image_2.png" mce_href="http://blogs.msdn.com/blogfiles/bharry/WindowsLiveWriter/Newfeaturestounderstandbranchingmerging_B6CB/image_2.png"&gt; improved history (Scenario 1)&lt;/a&gt;. While working on my feature I was doing some forward merges and resolving conflicts (fun, fun, fun ;)). Being able to display history and track the changes in time to understand why a line of code changed in the way it did would be invaluable. Unfortunately it's utilizing new server calls so chances for powertool including this functional are smaaaaal.&lt;br&gt;&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=7175299" width="1" height="1"&gt;</content><author><name>michalma</name><uri>http://blogs.msdn.com/members/michalma.aspx</uri></author><category term="Rosario" scheme="http://blogs.msdn.com/michalma/archive/tags/Rosario/default.aspx" /></entry><entry><title>Early Rosario feedback</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/michalma/archive/2008/01/05/early-rosario-feedback.aspx" /><id>http://blogs.msdn.com/michalma/archive/2008/01/05/early-rosario-feedback.aspx</id><published>2008-01-06T04:10:00Z</published><updated>2008-01-06T04:10:00Z</updated><content type="html">&lt;p&gt;I just read Brian's post (over month after the fact :() about Rosario specs - &lt;a href="http://blogs.msdn.com/bharry/archive/2007/11/30/vsts-codename-rosario-specifications-begin-to-arrive.aspx" mce_href="http://blogs.msdn.com/bharry/archive/2007/11/30/vsts-codename-rosario-specifications-begin-to-arrive.aspx"&gt;http://blogs.msdn.com/bharry/archive/2007/11/30/vsts-codename-rosario-specifications-begin-to-arrive.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt;It's a great way to influence product that is being written right now (literally :) ). If you are interested in changes we do to:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;History dialog&lt;/li&gt;&lt;li&gt;Add to source control&lt;/li&gt;&lt;li&gt;Labeling&lt;/li&gt;&lt;/ul&gt;please read the specs (http://msdn2.microsoft.com/en-us/teamsystem/bb936702.aspx) and comment on the forum!&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=6998533" width="1" height="1"&gt;</content><author><name>michalma</name><uri>http://blogs.msdn.com/members/michalma.aspx</uri></author><category term="Rosario" scheme="http://blogs.msdn.com/michalma/archive/tags/Rosario/default.aspx" /></entry><entry><title> Small Orcas Improvements - part 2</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/michalma/archive/2008/01/05/small-orcas-improvements-part-2.aspx" /><id>http://blogs.msdn.com/michalma/archive/2008/01/05/small-orcas-improvements-part-2.aspx</id><published>2008-01-06T04:00:00Z</published><updated>2008-01-06T04:00:00Z</updated><content type="html">&lt;p&gt;"Check-in does not check-in". One of the most feared complains from the users. We all check-in files every day (or not, when gauntlet is in use ;)) and everything works fine.But customers are always right (vide Get Latest on Checkout)! So one theory explaining this phenomena say that user encounters conflicts doing check-in.He resolves the conflicts and expects that when Resolve Dialog disappears the files will be checked-in. This is very far from the truth - he needs to try checking in the files again himself. &lt;/p&gt;&lt;p&gt;Why we don't make his life easier by re-attempting to check-in files automatically? Whel, resolving conflicts most probably will change content of the files. Before doing check-in user should at least build sources again to avoid build breaks.&lt;/p&gt;&lt;p&gt;So what we improved in Orcas? It's very psychological feature :)&amp;nbsp; - Resolve Dialog contains label that inform user that check-in failed. Also, when Check-in Dialog is closed we show extra message box, telling user again that he need to try checking-in files again.&lt;br&gt;&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=6998460" width="1" height="1"&gt;</content><author><name>michalma</name><uri>http://blogs.msdn.com/members/michalma.aspx</uri></author><category term="TFS2008" scheme="http://blogs.msdn.com/michalma/archive/tags/TFS2008/default.aspx" /></entry><entry><title>TFS Msscci Provider 2.0</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/michalma/archive/2008/01/05/tfs-msscci-provider-2-0.aspx" /><id>http://blogs.msdn.com/michalma/archive/2008/01/05/tfs-msscci-provider-2-0.aspx</id><published>2008-01-06T03:31:00Z</published><updated>2008-01-06T03:31:00Z</updated><content type="html">&lt;P&gt;Just before Holiday Season we released new version of TFS Msscci Provider - &lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyID=FAEB7636-644E-451A-90D4-7947217DA0E7&amp;amp;displaylang=en" mce_href="http://www.microsoft.com/downloads/details.aspx?FamilyID=FAEB7636-644E-451A-90D4-7947217DA0E7&amp;amp;displaylang=en"&gt;http://www.microsoft.com/downloads/details.aspx?FamilyID=FAEB7636-644E-451A-90D4-7947217DA0E7&amp;amp;displaylang=en&lt;/A&gt;. Of course the biggest demand was to allow provider to work with the Orcas Object Model. This means, that if you install Orcas in your organization, you can use it with your VS2003/VB6/FoxPro tools as well, you don't need to install Whidbey just for them. If some dev boxes will still have only VS2005 - you may use old Msscci Provider on them - remember that Whidbey and Orcas client and servers are compatible.&lt;/P&gt;
&lt;P&gt;So what changed besides Orcas dependency? We added 2 cool features for VS 2003:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;we batch checkins of pending edits, done in multiple projects (before you were getting checkin dialog for each project)&lt;/LI&gt;
&lt;LI&gt;we validate folder you selected during "Open from SCC" to check if it contains project file&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;We also added support for&amp;nbsp; eMbedded C++ 4 (you could enable it before, casting a small spell - http://blogs.msdn.com/michalma/archive/2007/02/15/msscci-with-embedded-c-4.aspx).&lt;/P&gt;
&lt;P&gt;But my favorite is something else (and probably it's not noticed by nobody ;) While testing Msscci provider, we do "Open from SCC" and "Add to SCC" much more often than any person using provider for real work. This means that we spend much more time in "Pick folder item" dialog. In this version we finally cut number of server calls, needed to navigate the server structure and select path we want. I can tell you one thing - it saved Ben and me a lot of frustration, while working inside vpc against our personal, slow tfs servers. :)&lt;BR&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=6998260" width="1" height="1"&gt;</content><author><name>michalma</name><uri>http://blogs.msdn.com/members/michalma.aspx</uri></author><category term="TFS2008" scheme="http://blogs.msdn.com/michalma/archive/tags/TFS2008/default.aspx" /><category term="TFS Msscci Provider" scheme="http://blogs.msdn.com/michalma/archive/tags/TFS+Msscci+Provider/default.aspx" /></entry></feed>