The question about using a named instance with TFS has come up several times, and it came up again today on an internal mailing list.  As to why we don't support it in V1, Brian Harry states that it was the time to get it into setup and the additional testing that led to the decision to postpone it to a future version.

However, for those of you who want to try it, there is a "do it yourself" approach.  Bill Essary posted the outline of how to do it in the following forum post.  I've copied the answer below, and added some links to the TFS admin utilities and SQL docs.  Keep in mind this is not a supported and tested setup.

TFS only supports operation on the default SQL instance in V1.  If you are determined to try move TFS to a non-default instance, you might have better luck experimenting with a SQL native client alias.  This allows you to map a non-standard port for a server name in a connection string without actually introducing the port number into the connection string itself.

Here is how you create an alias:

1) Open SQL Server Configuration Manager on the TFS application tier machine

2) Expand the SQL Native Client Configuration node

3) Right click on Aliases and select New Alias...

4) Enter an alias name and a SQL port number for that alias

Use tfsreg and renamedt to replace the SQL Server name with the name of the alias.  Alternately, reinstall the TFS AT using the alias instead of the real SQL Server name.

If you have questions, be sure to post them in the Visual Studio Team Foundation Forum.