이러한 스냅 샷은 빌드 전용 RTC repo 작업 영역 (RTC의 빌드 정의에 연결하는 repo 작업 영역)에서만 만들어야합니다.
mentioned in this thread으로
스냅 샷을 제공 할 수 없습니다. 스트림 또는 작업 영역의 불변 구성입니다. 그것은 당신의 빌드에 들어간 것을 나타냅니다.
스냅 샷을 삭제할 수 있으며 빌드 사용자의 빌드 작업 영역에 있습니다.
더 쉽게, 해당 repo 작업 영역을 삭제하거나 다시 만들 수 있습니다.
은 그러나 몇 스냅 샷을 삭제하는 것은 바람직하지 않습니다 :
스냅 샷은 빌드시의 SCM 작업 공간을 나타냅니다.
변경 사항이 수락되면 통과했는지 여부에 관계없이이 빌드에 포함되며 스냅 샷은 변경 집합이 빌드에 포함될 때보고 할 빌드에 사용됩니다.
그래서 스냅 샷을 삭제하면 실제로 빌드에 변경 집합이 도입되었을 때 빌드 프로세스를 혼동하게되므로 바람직하지 않습니다. 나는 정기적으로 그들이 더 이상 필요하지 않으며 내가 할 수없는 후 내가 가지고있는 빌드 작업 공간의 수백을 정리해야하지만
그
그들 스냅 샷이있는 경우 스냅 샷을 나열하거나 (repo 작업 공간에서 마우스 오른쪽 버튼을 클릭하여 "스냅 샷 표시") 해당 목록의 스냅 샷을 여러 개 선택하면 여러 선택 항목의 컨텍스트 메뉴를 통해 해당 스냅 샷을 삭제할 수 있습니다.
또는 할 수도 있습니다, 같은 다중 선택, change their ownership, 당신은 수백이있는 경우 적어도 (그 안에 그들을 덤프 더 영구적 인 해결책을 보류) 공통의 repo 작업 공간으로 이동
을하지만까지 REPOS 작업 영역 :
이
첫째, 그 이상이다 : (당신이 RTC4를 사용하지 않는) 빌드 정의는 하나를 참조해야하며, 젠킨스 하나를 구축하지 않아야하지만, 단순히 RTC에서 소스를받을
두 번째로, 작업 공간을 나열하고 각 스냅 샷을 삭제하기 위해 해당 스냅 샷을 삭제할 수 있습니다 (RTC downloads에서 사용 가능한 Java API 사용).
이
작업 영역을 삭제하기 전에 스냅 샷을 제거하려면 this thread
참조, 전화 다음
IWorkspaceConnection.removeBaselineSet(IBaselineSetHandle baselineSet, IProgressMonitor monitor)
당신이 소유하는 작업 공간의 IWorkspaceHandle
이있는 경우 스냅 샷을 사용하면 해당 소유자가있는 모든 스냅 샷을 찾을 수 있습니다 IBaselineSetSearchCriteria
(IBaselineSetSearchCriteria
에는 쿼리 범위를 추가로 지정하는 방법이 있습니다.)
예는 :
IWorkspaceHandle wsHandle = null // GET ME SOMEHOW
IWorkspaceManager workspaceManager = SCMPlatform.getWorkspaceManager(repo);
IBaselineSetSearchCriteria criteria = IBaselineSetSearchCriteria.FACTORY.newInstance();
criteria.setOwnerWorkspaceOptional(wsHandle);
List snapshotHandles = workspaceManager.findBaselineSets(criteria, MAX_TO_SHOW, null);
// snapshotHandles contains a list of IBaselineSetHandle, so you can fetch them
덕분에, 그러나 이것은 정말 문제가 해결되지 않습니다. 빌드 전용 작업 공간에서 스냅 샷이 작성되는 것이 옳습니다. 그러나 필자는 주기적으로 수백 개의 빌드 작업 공간을 정리해야하는데,이 작업 공간은 더 이상 필요하지 않으며 스냅 샷이있는 경우이를 수행 할 수 없습니다. 즉, GUI를 통해 작업 영역 자체를 삭제하기 전에 각 작업 공간에서 수동으로 스냅 샷을 하나씩 삭제해야합니다. – JamesE
@JimG 내 대답을 편집했습니다. RTC 4.x 또는 RTC 3.x를 사용하고 있습니까? – VonC
감사합니다. RTC 4.x를 사용하고 있습니다. 나는 당신의 해결책이 나를 위해 일할 것이라고 생각한다. 나는 나중에 오늘 그것을 시험 할 것이다. BTW ... 내가 수백 개의 Repo 작업 영역을 보유하고있는 이유는 Jenkins의 수백 가지 작업 ... 작업 당 하나의 작업 영역이 있다는 것입니다. 다시 한번 감사드립니다. – JamesE