2017-10-20 4 views
0

아래 코드와 같이 작업 공간의 상태를 보는 코드가 있습니다.거기에 TFS status.Numoperations! = 0 인 경우 업데이트해야하는 파일 이름을 가져 오는 방법이 있습니까?

var status = workspace.Get(request, GetOptions.Preview).NumOperations; 

상태가 0보다 큰 경우 내가의 이름 또는 가져 오기 작업을 수행 할 대상이되는 파일의 전체 경로를 알고 싶어요. 나는 파일의 목록을 얻은 후에 선택적 get을 할 계획이다.

이 가능합니까?

+0

당신이 문서를 참조하십시오나요 다음 chanages를 얻을 수

사용 VersionControlServer.QueryHistory()? 솔루션을 구현하는 데 어떤 문제점이 있습니까? –

+0

설명서를보고 있는데 아직 유용한 정보를 찾지 못했지만 잘못 찾고 있습니다. 그것은 단지 파일을 업데이트해야 하는지를 살펴본 후 내 디렉토리에서 선택적으로 최신 버전을 얻고 싶다는 것입니다. –

+0

@AhmedDaniel [VersionControlServer.GetItems Method] (https://msdn.microsoft.com/en-us/library/microsoft.teamfoundation.versioncontrol.client.versioncontrolserver.getitems (v = vs.120) .aspx)를 확인 했습니까?), 그렇지 않으면 도움이되는지 확인할 수 있습니다. 또한이 링크 : https://paulselles.wordpress.com/2014/01/08/team-foundation-server-api-programmatically-downloading-files-from-source-control/ –

답변

1

로컬 작업 공간과 서버 간의 변경 집합을 쿼리 한 다음 변경 집합에서 변경된 파일을 구문 분석해야합니다.

var changes = vcs.QueryHistory("$/ServerPath", VersionSpec.Latest, 0, RecursionType.Full, null, new WorkspaceVersionSpec(localworkspace),null,Int32.MaxValue,true,true); 
+0

고맙습니다. 도움이되었습니다 ... 저는 잘못된 방식으로 문제를보고있었습니다. (로컬과 서버간에 변경된 파일을 가져 와서 내가 원하는 것을 할 수있었습니다. –