사용자 인터페이스 어댑터 확장점을 사용하여 소스 제어 관리 시스템 구현

소스 제어 관리 사용자 인터페이스 어댑터 확장점을 사용하면 CVS, IBM® Rational® ClearCase®(기본 및 UCM ClearCase), IBM Rational Team Concert와 같은 다양한 소스 제어 관리 시스템을 구현할 수 있습니다.

이 태스크 정보

소스 제어 관리 사용자 인터페이스 어댑터 확장점을 사용하면 소스 제어 관리 사용자 인터페이스를 Rational Asset Manager Eclipse 클라이언트와 통합할 수 있습니다. 소스 제어 관리 시스템이 사용자가 제출하는 자산의 자원 아티팩트를 관리하는 경우 컨트리뷰터가 판별됩니다. 컨트리뷰터는 자원 아티팩트의 teamRepositoryProviderID 및 각 아티팩트의 레코드된 artifactReferenceKind 정보에 기반합니다. 자산을 제출하기 위해 컨트리뷰터가 체크아웃될 파일을 판별하고 모든 파일에 체크인합니다. 추적성을 위해 소스 제어 관리 정보를 기록할 수 있도록 파일을 소스 제어 관리 시스템에 제출해야 합니다. 컨트리뷰터는 소스 제어 관리 시스템에 대한 연결도 작성하므로 소스 제어 관리에서 Eclipse 작업공간으로 파일을 체크아웃할 수 있습니다. 자산을 제출한 분기를 선택하거나 기타 적절한 분기를 선택 또는 새 분기를 작성할 수 있는 옵션에서 선택할 수 있습니다.

소스 제어 관리 사용자 인터페이스 어댑터 확장점을 사용하면 아티팩트의 데코레이션과 특성을 정의하고 자산 가져오기에 사용할 수 있는 분기를 판별할 수 있으며 사용자가 관련 소스 제어 관리 저장소에 대한 연결을 작성할 수 있습니다.

소스 제어 관리 시스템과 완전한 통합을 제공하려면 com.ibm.ram.rich.core.teamContributor 확장점도 사용해야 합니다. com.ibm.ram.rich.core.teamContributor 확장점 사용에 대한 자세한 정보는 소스 제어 관리 어댑터 확장점 사용을 참조하십시오.

API 정보:

소스 제어 관리 사용자 인터페이스 어댑터 확장점을 사용하여 여러 teamUIContributor 컨트리뷰터를 정의할 수 있습니다. 각 컨트리뷰터는 com.ibm.ram.rich.ui.scm.TeamUIContributor로 확장하는 클래스를 제공해야 합니다.

각 컨트리뷰터는 하나 이상의 artifactReferenceKind 요소를 제공해야 합니다. 이 요소는 각 아티팩트에 첨부되어 아티팩트가 위치한 소스 제어 관리 시스템을 식별합니다. 자산을 사용하여 해당 자산의 아티팩트에 사용할 teamUIContributor를 판별해야 합니다. 컨트리뷰터는 다른 컨트리뷰터가 방해하지 않도록 이 속성에 대해 전역적으로 고유한 이름(예: org.organization.product.ram.myscm)을 선택해야 합니다.

각 컨트리뷰터가 하나의 teamRepositoryProviderID 요소를 제공해야 합니다. 이 요소는 작업공간에서 해당 자원의 소스 제어 관리 시스템을 식별합니다. 저장소 제공자는 org.eclipse.team.core.RepositoryProvider.getProvider(IProject)를 사용하여 얻을 수 있습니다. 각 저장소 제공자의 ID는 org.eclipse.team.core.RepositoryProvider.getID()를 사용하여 얻을 수 있습니다. teamRepositoryProviderID 요소의 repositoryProviderID 속성에서 이 ID를 제공해야 합니다.

구성 마크업:

<!ELEMENT extension (teamUIContributor+)>
<!ATTLIST extension  
 point CDATA #REQUIRED 
 id CDATA #IMPLIED
 name  CDATA#IMPLIED>

<!ELEMENT teamUIContributor (artifactReferenceKind+ ,teamRepositoryProviderID)>
<!ATTLIST extension
 point CDATA#REQUIRED
 id CDATA #IMPLIED
 name CDATA #REQUIRED>
다음 확장점을 사용하여 사용자 인터페이스 아티팩트를 컨트리뷰션하십시오.
<!ELEMENT artifactReferenceKindEmpty>
<!ATTLIST artifactReferenceKind
kind CDATA #REQUIRED>
다음 속성은 각 아티팩트에 첨부되어 아티팩트가 시작된 소스 제어 관리 시스템을 식별합니다. 자산을 이용하여 아티팩트에 사용할 teamUIContributor 또는 teamContributor를 판별할 때 이 속성을 사용하십시오. 컨트리뷰터는 다른 컨트리뷰터가 방해하지 않도록 이 속성에 대해 전역적으로 고유한 이름(예: org.organization.product.ram.myscm)을 선택해야 합니다.
<!ELEMENT teamRepositoryProviderID EMPTY>
<!ATTLIST teamRepositoryProviderID
repositoryProviderID CDATA #REQUIRED>
이 코드는 작업공간에서 자원의 소스 제어 관리 시스템을 식별합니다. 자원의 저장소 제공자는 org.eclipse.team.core.RepositoryProvider.getProvider(IProject)를 사용하여 얻을 수 있습니다. 각 저장소 제공자의 ID는 org.eclipse.team.core.RepositoryProvider.getID()를 사용하여 얻을 수 있습니다. teamRepositoryProviderID 요소의 repositoryProviderID 속성에서 이 ID를 제공해야 합니다.

<extension id="com.ibm.ram.rich.ui.teamUIContributor" 
 name="Team UI Contributor" 
 point="com.ibm.ram.rich.ui.extension.teamUIContributor">

<teamUIContributor class="com.ibm.ram.internal.rich.ui.scm.CVSArtifactUIContributorWrapper"
 id="com.ibm.ram.rich.core.teamContributor.cvs"
 name="Team UI Contributor">

<artifactReferenceKind kind="CVS">

<teamRepositoryProviderID repositoryProviderID="org.eclipse.team.cvs.core.cvsnature">

</teamRepositoryProviderID>
</teamUIContributor>
</extension>

피드백