2009-03-06 2 views
6

우리는 Visual Studio 2008/TFS 2008을 사용하고 있습니다.TFS 작업 영역 경로가 자체 매핑을 계속 유지하는 이유는 무엇입니까?

우리는 작은 개발자 팀이 있습니다. 주기적으로 우리 중 누구도 "최신"을 얻을 때 우리 경로 중 하나가 다른 경로로 다시 매핑됩니다. 그것은 자신의 것입니다. 이로 인해 경로가 변경 되었기 때문에 "최신 항목 가져 오기"가 파일 삭제를 시작합니다. 잘못된 경로로 다시 매핑 될 때마다 동일한 경로입니다.

  1. 작업 영역 정의는 어디에 저장됩니까?
  2. 우리가 TFS를 점검했을 수있는 것이 있습니까?
+0

레코드의 경우 Visual Studio 2010 SP1에서이 문제가 계속 발생합니다. TFS에서 얻을 때 로컬 대상 폴더가 수정 된 루트 매핑 하나가 있습니다. 이제는 대부분의 폴더가 올바른 것으로 (새 루트 매핑 당) 있지만 일부는 여전히 이전 매핑을 사용하고 있습니다. 매핑을 직접 확인 했으므로 하나만 있습니다 (루트 매핑). 문제 프로젝트가 열렸고 의심 스럽지만 csproj 및/또는 sln 파일의 경로가 VS 내의 TFS 지원에 잘못된 위치에 매핑되도록 지시하고 있습니다. 또한 TFS '캐시'폴더 (AppData \ Local \ Microsoft \ Team Foundation)를 제거하려고했습니다. – redcalx

답변

0

작업 영역 정의는 서버에 저장됩니다.

명령 줄로 이동하여 "tf workspace"를 입력하면 작업 영역의 정의가 표시됩니다.

+0

그래, 내 작업 영역을 수정할 수 있습니다. 그러나 get 작업 후에 내 작업 영역을 보면 경로가 변경됩니다. – SkunkSpinner

1

이것은 정상적인 동작이 아닙니다. 뭔가 재미있는 것처럼 들립니다. 그냥 확인하고 싶었 - 당신이하고있는 모든 작업은 소스 제어 탐색기에서 간단하게 수행 할 수 있습니까? 또한 여러분 모두가 다른 기계에 있습니까? (즉, 가상 컴퓨터 이미지 나 여러 대의 컴퓨터가 동일한 이름을 가진 곳은 공유하지 않습니다)

하나는 파일, 소스 제어, 작업 영역 관리로 이동하고 이전과 이후의 작업 폴더 매핑을 모두 확인하는 것입니다. 후에 무엇이 바뀌고 있는지 알아봐라. 그것은 그렇게해서는 안됩니다 - 만약 그렇다면 우리에게 일어나는 일에 대한 단서를 줄 수 있습니다.

1

당신은 또한 당신의 작업 공간 캐시를 지우고 시도하고 그것을 다시 매핑 할 수 있습니다 :

 
SET AppDataTF=%USERPROFILE%\Local Settings\Application Data\Microsoft\Team Foundation 
SET AppDataVS=%APPDATA%\Microsoft\VisualStudio 
IF EXIST "%AppDataTF%\1.0\Cache" rd /s /q "%AppDataTF%\1.0\Cache" > NUL 
IF EXIST "%AppDataTF%\2.0\Cache" rd /s /q "%AppDataTF%\2.0\Cache" > NUL 
IF EXIST "%AppDataVS%\8.0\Team Explorer" rd /s /q "%AppDataVS%\8.0\Team Explorer" > NUL 
IF EXIST "%AppDataVS%\9.0\Team Explorer" rd /s /q "%AppDataVS%\9.0\Team Explorer" > NUL 
+0

매핑이 다른 워크 스테이션에서 제대로 작동하는 동안 한 워크 스테이션에서 작동하기 시작했을 때이 기능이 저에게는 효과적이었습니다. – driis

5

나는 해결책을 여는 동안 내가 얻을 때 이런 일이 있었다. 솔루션에 해당 폴더 아래에있는 다른 프로젝트에 대한 상대 경로가 포함되어 있고 작업 영역에서 다르게 매핑 된 경우 GET에서 해당 매핑을 다시 매핑한다고 알려줍니다. 문제는 그것이 완전히 잘못되었다는 결정입니다.

주위의 유일한 방법은 모든 개발자가 각 작업 영역에서 나타내는 sourcec 컨트롤과 havev와 동일한 구조를 사용하는지 확인하는 것입니다.

도착하는 것은 고통이었습니다. 기본적으로 모두가 모든 파일의 로컬 복사본을 모두 삭제하고 작업 영역을 다시 실행해야했으며, 작업 공간이 변경되면 '가져 오십시오'를 선택하고 VS를 닫은 다음 열면 최신 상태로 유지해야합니다.

프로젝트의 사본이 로컬에서 제외 된 경우 해당 프로젝트가 열리지 않아도 GET이 여전히 잘못된 것입니다. 최신 버전의 프로젝트에서 차이점을 확인할 때 변경이 없었지만 해당 프로젝트가 포함 된 솔루션을 열면 해당 프로젝트의 dll 참조가 자동으로 변경되므로 이는 실망 스럽습니다. 그 시점에서 ANY 파일에 대한 변경이 보류 중입니다. 그러나 건물을 변경 한 후에도 변경 사항이 지속되어 다음번에 다시 해제 될 수 있습니다 ...

나는 이것이 모두 잘못되었다고 확신하지만 이번 주에 우리에게 일어난 일입니다.

+0

나는 똑같은 문제가있다. 그러나 일부 기계에서만 가능하고 일부 기계에서는 그렇지 않습니다. 우리는 모든 사용자를 위해 일관된 솔루션 구조를 가지고 있습니다. 우리는 당신의 단계를 따라 갔지만 VS 2008은 여전히 ​​새로운 맵핑을 만들어 모든 파일을 함께 섞습니다. 나는 단지이 결과를 macthing 한 결과를 찾을 수 있다는 것에 놀랐다. –

1

알았어. 여기에 해결책이 있습니다.

먼저 Visual Studio 2008 SP1을 설치하십시오 (VS 2008 및 팀 탐색기가 이미 설치되어 있다고 가정).

이제 Visual Studio 2008을 시작하고 소스 제어로 이동하여 작업 영역을 삭제하십시오. 새 작업 영역을 만들고 로컬 폴더 매핑에 대한 소스 제어 폴더를 만듭니다. 확인을 클릭하십시오. "작업 공간이 수정되었습니다., 최신 상태로 유지하려고합니다.", 아니오를 선택하십시오.

이제 Visual Studio 2008을 닫습니다.

Visual Studio 2008을 다시 열고 소스 제어로 이동하고 구체화하십시오 (파일을 덮어 쓸지 선택하는 두 확인란 모두 선택). 당신이 asp.net 웹 기반 솔루션이있는 경우

이제 IIS에서 웹 사이트, 응용 프로그램 풀을 만들고 구성하는 시간, 적절한 인증 및 권한을 설정합니다. 그렇지 않으면 옵션!

이제 소스 제어에서 적절한 폴더로 이동하여 솔루션 파일을 두 번 클릭하십시오. 로컬 폴더에서 솔루션 파일을 두 번 클릭하여 솔루션을 열 수도 있지만 소스 컨트롤에서 솔루션을 여는 것이 더 쉽습니다.

위 단계를 수행하면 웹 사이트가 구성되어있는 경우 이 표시되며 Visual Studio 2008에서는 사용자가 설치했는지 확인하는 웹 사이트을 자동으로 검색합니다. 확인을 클릭하십시오.

소스 제어 서버에 연락하여 동기화가 필요한지 확인합니다. 솔루션에 다수의 프로젝트가있는 경우 을 보면 화일 진행률 표시 줄이 빠르게 깜박이면서 화면이 표시되고 솔루션이 수분 내에 설정됩니다.

실제 문제는 입니다. Visual Studio 2008 서비스 팩 1입니다. 그렇지 않으면 TFS 매핑이 손상됩니다. IF SP1이 설치되어 있고 위의 지침을 따르면 아무런 문제가 없습니다.

+0

감사! 당신은 나의 구세주입니다, 이것은 오랫동안 저에게 일어나고 있으며 vs2008 + SP1 + 팀 탐색기 전체를 ​​다시 설치하지 않고는 절대로 제대로 돌아 가지 않았습니다. – MeeKaaH

관련 문제