2011-03-30 10 views
2

특정 빌드 후 다음을 수행하는 TF.exe 명령이있는 배치 파일을 실행하고 싶습니다. DLL 체크 아웃 "새로 빌드 한 dll"을 복사하십시오. 체크 아웃 된 DLL 상단에 을 입력 한 다음 다시 체크인하십시오.TFS 2010 빌드에서 배치 파일 실행

배치 파일을 실행하기 위해 InvokeProcess 빌드 활동을 설정했지만 배치 파일을 실행할 때 사용 권한 오류가 발생했습니다.

저는 PowerShell을 사용하여이 작업을 수행 할 수 있다는 것을 알고 있습니다. 그러나 지금 당장 서명 할 필요가 없습니다. 이 작업을 올바르게 수행하기위한 제안 사항이 있습니까?

+0

사용 권한 오류는 무엇입니까? – Jehan33

답변

3

아마이 답변을 얻으 려하지만, 빌드 할 수없는 DLL은 소스 저장소에 체크인해서는 안됩니다. "델타"조작은 없습니다.

내가 말했던 것처럼, 내가 생각할 수있는 몇 가지 방법이있다. 적어도 그것이 당신이보고있는 방향으로 갈 수 있다고 생각할 수있다. 복사 할 PostBuild 단계는 옵션입니다 (참고 :이 유형의 옵션을 사용하면 모든 사용자가 동일한 상대 위치에 DLL을 가지고 있지만 그 가능성이 가장 높습니다).

체크 아웃을 처리하고 다른 프로세스를 통해 체크인해야하지만 두통을 원하지는 않지만 서비스 또는 PowerShell 둘 다 옵션 일 수 있습니다.

몇 가지 유형의 CI 방법론으로 작업하면 탐색 할 수있는 또 다른 옵션이 될 수 있습니다. MS는 이제 TFS에서 CI를 사용할 수 있지만 Cruise Control .NET과 같은 다른 옵션도 있습니다.

+0

http://geekswithblogs.net/michelotti/archive/2010/05/15/version-assemblies-with-tfs-2010-continuous-integration.aspx – jonperl

+0

으로 어셈블리를 버전화 할 수 있습니다. 올바른 버전을 얻는 문제에 대한 흥미로운 이야기입니다. 필자는 TFS 저장소에 어셈블리를로드하는 대부분의 비즈니스가 단순히 최신 정보를 얻을 수있는 위치에 있다는 사실에 더 중점을 두었습니다. 소스 코드와 같이 컴파일 된 소스에서 델타를 얻지 못하면 최신 정보를 저장하는 경우 많은 공간을 낭비하게됩니다. –

+1

바이너리 델타가 꽤 쓸모없는 것이 사실이지만, 소스 제어하에 모든 것을 넣는 것을지지하는 생각의 학교가있어서, 하나의 출판 된 버전과 관련된 모든 것에 대해 원 스톱 쇼핑을 할 수 있습니다. 그것은 미친 것이 아니며 반드시 낙담해서는 안됩니다. –

3

MSBuild에서 배치 파일의 작업을 수행 할 수없는 이유를 알지 못합니다. 예를 들어 MSBuild Extension Pack의 TfsSource 작업을 실행하여 TFS에서 항목을 체크 인하거나 체크 인 할 수 있습니다.