‘tf checkin’ exit codes

All tf.exe commands return one of these: public enum ExitCode { Unknown = -1, Success = 0, PartialSuccess = 1, UnrecognizedCommand = 2, Failure = 100, } You should never see -1.  Code 2 is only for the very specific case where you mistype tf someboguscommand <…>.  The important exit codes are 0, 1, and 100. …

3

TFS Version Control Concepts 3: Item Versions and the two meanings of ‘Changeset’

Let’s recap Items one more time. Items are unique.  They have an ID that no other item does. Items are versioned.  Like all version control systems, TFVC is about making it easy to store successive versions of the same item and retrieve old ones when necessary. Items have names.  Yes, plural.  At a rudimentary level,…

6

TFS Version Control Concepts 2b: Namespaces in practice

Command Line usage In Source Control Explorer, you’re always operating on pending space.  At the command line, it’s less clear.  Consider the following setup: you’re working in a directory $/project that’s mapped to c:\project and contains two files a.cs and b.cs.  For the sake of argument, we’ll say they have itemIDs 1 and 2. c:\project>tf ren…

6

TFS Version Control Concepts 2: Item Names

Last time we learned that the principle objects in the source control system are called Items, and a few of their basic properties.  That was awhile ago so let’s recap: Items are unique.  They have an ID that no other item does. Items are versioned.  Like all version control systems, TFVC is about making it…

7

Outlook macro for work item and changeset hyperlinks — updated for 2007

When I upgraded to OL2007, Buck’s great little macros stopped working.  Today, I finally got the guts to ask the Outlook guys what they broke improved.  The answer was simple enough.  I’ll let the code do the talking: Sub LinkToWorkItem() Set oDoc = ActiveInspector.WordEditor Set oWord = oDoc.Application Set oSelection = oWord.Selection ” Convert the…

3

Intro to Solution Binding in TFS, plus bonus FAQ

Solution Explorer isn’t working the way I expect.  How do I fix it?  In TFS, the answer is usually quite simple, because TFS uses workspaces to do most of the dirty work.  So if you’re familiar with our workspace model, a quick behind-the-scenes tour of solution binding should equip you to solve most problems yourself.  (If…

3

UI Bug: resolving multiple merge conflicts

Resolving merge conflicts is hard enough already.  Which branch is “target,” again?  Unfortunately there’s a bug in v1 that makes it even harder.  If you select multiple conflicts in the main Resolve dialog… …then you get this abomination: Yikes!  Allow me to translate. Command line / client API “Resolve version conflict” dialog “Resolve selected conflicts”…

1

How to use TFS for source control only

Personally, I’ve never had a problem simply ignoring the features I don’t need.  Nevertheless, this is a frequent request.  If you’re sick of waiting 10 minutes every time you want a new top-level folder, Paul Hacker has a solution for you: Empty Process Template.  It’s not completely gutted, but it should cut down the amount…

2

TFS Team Project whitepaper

As promised, we finally have some guidance around structuring team projects.  What can you do within a team project?  What can you migrate between projects?  Which settings are global, which are scoped only to Team Projects, and which can be broken into their own hierarchies?  Doug Neumann reveals all.  Here’s an overview of what he…

0

New CodePlex project: TFS Event Handler

In their own words: Project DescriptionThis is a service based system with a front-end allowing the dynamic addition of event handlers for Team System. Users can upload their own custom Handlers as part of an assembly which are then loaded and executed on the server. This application runs in conjunction with TFS (Team Foundation Server)…

1