Team Foundation Object Model 을 이용하여 별도의 TFS Client 를 개발하는 경우가 종종 있습니다. 개발자라면 "Visual Studio 에 Team Explorer 가 있는데 왜~?" 라고 묻기도 하지만, 비개발자들 예를 들면, 관리자, 비즈니스 담당자들이 Team Foundation Server 에 접속하기 위해서는 Visual Studio 를 실행해야 합니다. 왜냐하면, Team Explorer 의 필수 구성 요소가 바로 Visual Studio Shell 이기 때문이죠.

Team Foundation Web Access 와 같은 제품이 있긴 하지만, TFS 를 사용해 보지 않은 사람은 사용법도 익히기 어려울 뿐만 아니라 특정한 프로세스를 강요할 수 없는 이유이기도 합니다. 이런 이유로 개별적인 TFS Client 제품을 선호하는 경우가 있기도 합니다.

Team Foundation Client (예를 들면 Team Explorer) 등은 Visual Studio 에 매우 종속적인 제품입니다. 그래서 TFS Server 의 정보를 Visual Studio 하위의 레지스트리에 관리합니다.

   

아래는 그 예를 보여주는 오류 시나리오 입니다.

오류 발생 조건

1. Visual Studio 에서 특정 TFS 서버를 제거한다

2. 독립 TFS Client 에서 TFS 에 접속이 안된다.

   

오류 해제 조건

1. Visual Studio 에서 특정 TFS 서버로 연결한다

2. 독립 TFS Client 에서 TFS 탭 접속이 된다.

   

오류가 발생하는 예외 메시지 입니다.

처리되지 않은 예외: Microsoft.TeamFoundation.TeamFoundationInvalidServerNameException: TF30076: 제공한 서버 이름 dxtfs2008a이(가) 검색된 서버 URI와 일치하지 않습니다. 서버 이름이 올바른지 확인하십시오.

위치: Microsoft.TeamFoundation.Client.TeamFoundationServer.GetUriForName(String name)

위치: Microsoft.TeamFoundation.Client.TeamFoundationServer.get_Uri()

위치: Microsoft.TeamFoundation.Client.CheckAuthenticationProxy..ctor(TeamFoundationServer server)

위치: Microsoft.TeamFoundation.Client.TeamFoundationServer.Authenticate(Boolean useProvider, ICredentialsProvider provider)

위치: Microsoft.TeamFoundation.Client.TeamFoundationServer.EnsureAuthenticated()

위치: ConsoleApplication1.Program.Connection() 파일 C:\Users\엄준일\Documents\Visual Studio 2008\Projects\TFSSample\ConsoleApplication1\Program.cs:줄 43

위치: ConsoleApplication1.Program.Main(String[] args) 파일 C:\Users\엄준일\Documents\Visual Studio 2008\Projects\TFSSample\ConsoleApplication1\Program.cs:줄

22

계속하려면 아무 키나 누르십시오 . . .

   

위 문제를 해결하기 위해서는 반드시 서버 주소가 팀 탐색기에 등록이 되어야 합니다. 이는 곧 팀 탐색기에 등록이 되어야 한다는 말이며, 이는 Visual Studio 관련 레지스트리에 등록이 되어야 한다는 의미입니다.
HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\9.0\TeamFoundation\Servers

위의 레지스트리에 TFS 서버 주소를 넣어주시면, 독립 TFS Client 에서도 잘 접속이 되는 것을 확인할 수 있습니다.

신고
Posted by 땡초 POWERUMC

댓글을 달아 주세요