문제

RTC에 파일이 있습니다. foo.c)를 수정하고 변경 세트(CS1) 기타 변경사항도 함께 제공됩니다.그런 다음 해당 파일을 다시 수정하고 다른 변경 집합(CS2) 기타 변경사항도 함께 제공됩니다.

지금 배달하고 싶은 상황이 생겼어요 CS2 스트림에 전송했지만 RTC에서 이를 전달하면 스트림에 간격이 생길 수 있다는 오류가 표시됩니다( CS1).전부 전달하고 싶지는 않아요 CS1 하지만 아직 빌드에 있어서는 안 되는 몇 가지 변경 사항이 포함되어 있기 때문입니다.원래 변경 사항은 다음과 같습니다. foo.c ~에 CS1 사소한 제거였습니다. #include, 다른 어떤 것에도 영향을 미치지 않습니다.

그 격차를 해소할 수 있는 방법은 없을까요?

패치 적용에 대한 RTC 문서에서 몇 가지 내용을 볼 수 있지만 그 내용이 어떻게 진행되는지 이해할 수 없습니다.
변경 집합을 여러 변경 집합으로 분할하여 하나의 파일만 전달할 수 있는 방법이 있습니까?

도움이 되었습니까?

해결책

2012년 이후 업데이트(그리고 모든 것을 제공하고 원하지 않는 것을 되돌리는 원래의 "해결 방법"):

보다 이 스레드:

RTC 4.0.5에서는 공백이 있는 변경 세트를 허용하려고 할 때 추가 지원을 제공했습니다(수정 사항을 백포트하려고 할 때 종종 발생함).

기능에 대해 매우 간략하게 요약하면, 간격이 있는 변경 세트를 수락할 때 이제 한 번에 하나의 변경 세트를 수락하고 간격이 포함된 변경 세트에 대해 새 변경 세트를 생성하는 간격 워크플로를 따를 수 있습니다(지원됨). 추적성)에는 동등한 변경 사항이 포함되어 있습니다.
이는 사용자가 변경 세트를 '패치'로 받아들일 필요가 없음을 의미합니다.

변경 세트를 패치로 적용하는 것은 새로운 워크플로에 비해 제한 사항이 있습니다.
이 기능은 다음에 요약되어 있습니다. RTC 4.0.5 '새롭고 주목할만한' 페이지.

다음은 이 기능을 보여주는 일부 비디오입니다.

그것은 변경 세트 찾기 특징:

https://jazz.net/downloads/pages/rational-team-concert/4.0.5/4.0.5/images/gapeditor.png


RTC 5.0에는 격차를 채우는 변경 세트가 사용자에게 표시되는 "틈 채우기" 기능을 추가하여 사용자가 모든 변경 세트를 수락하거나 RTC 4.0.5에서 사용할 수 있었던 격차 워크플로를 계속할 수 있도록 했습니다. .

이 기능은 다음에 요약되어 있습니다. RTC 5.0 '새롭고 주목할만한' 페이지:

격차를 메우는 데 관련된 클래스는 다음과 같습니다(RTC 5.0에서 사용 가능).

client side: IWorkspaceConnection.findChangeSetsToAcceptToFillGap(...) 
server side: IScmQueryService.findChangeSetsToAcceptToFillGap(...) 

두 기능 모두 "에서 자세히 설명됩니다.SCM에 대한 개선된 간격 처리" 기사.

https://jazz.net/downloads/pages/rational-team-concert/5.0/5.0/images/missing-change-sets-dialog.png


원래 답변 (2012)

변경 세트를 분할하는 방법이 있습니까?

글을 읽어보니 그렇지 않은 것 같아요 변경 세트 매뉴얼 페이지:

구성 요소의 파일이나 폴더는 둘 이상의 활성 변경 세트에 포함될 수 없습니다.
파일이나 폴더가 활성 변경 세트에 포함되어 있으면 해당 변경 세트가 현재 변경 세트인지 여부에 관계없이 해당 변경 세트의 모든 변경 사항이 해당 변경 세트의 일부가 됩니다. 해당 파일 또는 폴더에 대한 변경 사항은 이를 포함하는 활성 변경 세트가 완료될 때까지 새 변경 세트에 명시적으로 체크인될 수 없습니다..

CS1에 foo.c가 있음 그리고 CS2는 CS1이 "완료"(본질적으로 동결)되었음을 의미하므로 분할하려고 시도하는 것은 좋지 않습니다.

패치 솔루션의 의미는 다음과 같습니다.

  • CS1 취소 중
  • foo.c에 대한 추가 변경 사항을 CS2에 추가
  • CS1 변경 다시 실행

보다 "스트림에서 변경 세트를 제거하려면 어떻게 해야 합니까?"

스토리 149483 그 번거로운 작업 흐름을 향상시키는 것에 관한 것이며, 간격 감지 기능이 강화되고 있습니다(향상 24822)


그만큼 OP 팀보이 결론:

결국 전부 전달한 다음 원하지 않는 것을 취소했습니다..

다른 팁

문제:CS1은 foo.c를 변경하고, CS2는 foo.c를 추가로 변경합니다.CS2만 제공하고 싶지만 RTC에서는 이로 인해 격차가 발생할 수 있다고 말합니다.

해결책:CS2에서 패치를 만들고 CS1과 CS2를 모두 일시 중지합니다.그런 다음 패치를 적용하고 작업 공간에 병합한 다음 변경 사항을 체크인하면 CS2와 동일하지만 CS1에 종속되지 않는 또 다른 변경 세트인 CS3이 생성됩니다.이제 CS3를 제공할 수 있습니다.

CS3를 제공한 후 CS2를 삭제하고 CS1을 재개할 수 있으며, 이를 위해서는 CS3과 병합해야 합니다.

그러면 CS1이 CS3를 기반으로 구축된 상태가 되어야 하며 향후 CS1을 제공할지 여부를 선택할 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top