레이블이 cmd인 게시물을 표시합니다. 모든 게시물 표시
레이블이 cmd인 게시물을 표시합니다. 모든 게시물 표시

2011년 12월 30일 금요일

SCM - 베이스라인 BOM CLI


https://jazz.net/wiki/bin/view/Main/SCMCommandLineBillOfMaterials

This story is to support the following workflow with the RTC Command line:
  1. A user will be able to navigate to a baseline or snapshot using scm list command
  2. A user will be able to run a command to output a listing which describes the configuration as follows
    • for every item in the snapshot/baseline, we print a row which describes the path, item-id & state-id
A user will be able to extract a particular content from the repository using the state-id as a selector


참조 : When storing a reference to another item, RTC store an item handle, which is: item type + item UUID [+ optional state id (if referring to a particular state of an auditable item)].

IItemHandle handle = IComponent.ITEM_TYPE.createHandle(uuid, null);
ITeamRepository repo = ...;
IItem item = repo.itemManager.fetchCompleteItem(handle, IItemManager.DEFAULT, null);
IItemType type = item.getItemType();
System.out.println("Simple type name: " + type.getName());
System.out.println("Type's namespace: " + type.getNamespaceURI()); 

-
웹브라우저 이용시
- copy the UUID
- paste it into a URL of the form:
/resource/itemOid/com.ibm.team.scm.Component/_DC6QYM0yEd2CTNaxDdYRfg?_mediaType=text/xml
(replacing the UUID there with yours)
- open this in a web browser
- there the XML should indicate the type




  • URI format for IVersionedContentService is:

//content/////

  • URI format for IFilesystemContentService is:
https://:/jazz/service/com.ibm.team.filesystem.service.internal.rest.IFilesystemContentService/-/COMPONENT_UUID/filename.txt?itemId=RESOURCE_UUID&stateId=RESOURCE__STATE_UUID&platformLineDelimiter=CRLF

2011년 12월 18일 일요일

RTC_SCM_리눅스_GUI_&_CMD_사용법.ppt




개발환경 및 상황따른 사용법
4상황 1. 리눅스에서 Eclipse UI 이용한 방법
4상황 2. 리눅스 커맨드를 이용한 작업
4상황 3. 리눅스 커맨드와 이클립스를 혼용하여 사용하는 방법
4상황 4. 리눅스 커맨드와 이클립스(Tracking Mode) 혼용하여 사용하는 방법

RTC scm 커맨드 사용법

저장소 연결 & 로그인
scm login -n ccmhost -r https://ccmhost.mycompany.com:9443/ccm -u jazzy

참고: 로그아웃
scm logout -r ccmhost

참고: 프로젝트 영역 목록 보기
scm list projectareas -r ccmhost

참고: 팀 영역 목록 보기
scm list teamareas -r ccmhost






참고: 스트림 목록 보기 (소유자 : 팀영역)
scm list streams -r ccmhost


콤포넌트 만들기(팀 스트림은 미리 GUI를 통해 생성해 둔다)
scm create component "Squawk"(콤포넌트) "Squawk CMD"(스트림) -r ccmhost

개인 리파지토리 작업공간 만들기
scm create workspace "jazzy on Squawk CMD"(개인 리파지토리 작업공간) -s "Squawk CMD"(팀 스트림) -r ccmhost

PC 개인 작업 공간으로 서버상의 개인 리파지토리내 파일 다운로드
(.metadata 디렉토리 생성됨)
scm load -d c:\workspace\CMD -r ccmhost "jazzy on Squawk CMD"(갠 리파지토리 작업 공간) "Squawk"(콤포넌트)

PC 개인 작업 중인 파일을 서버상의 개인 리파지토리에 업로드하여 공유
scm share -r ccmhost "jazzy on Squawk CMD"(개인 리파지토리 작업 공간) "Squawk"(콤포넌트) Squawk(콤포넌트 대응 루트폴더명)

팀 스트림으로 개인 리파지토리내 공유용 변경 세트 전달하여 팀에 공유
scm deliver -r ccmhost -s "jazzy on Squawk CMD"(From 개인 리파지토리 작업 공간)

User B : GUI를 통해 Repository Workspace를 만들고 Load into SandBox
Dog.cpp 파일 수정 후 개인 리파지토리 작업공간들 변경 상태 파악 (Pending Changes)
scm status

참고: 비교
scm diff -r ccmhost file Squawk/CoreSquawk/Dog.cpp baseline 1003(최초 생성된 베이스라인 식별번호)


개인 리파지토리 작업공간으로 변경내용 체크인 및 변경세트 작성
scm
checkin Squawk(루트 폴더내 변경 사항)

변경세트 주석 붙이기
scm
changeset comment 1004(변경세트 식별번호) "Dog translation 01"

팀 스트림으로 변경 세트 전달하여 공유
scm
deliver -r ccmhost -s "jazzy on Squawk CMD"(From 개인 리파지토리 작업공간)
----------------------------------------------------------------------------
다른 사용자가 같은 파일을 수정하고 먼저 팀스트림으로 전달한 경우



User B : Pending Changes GUI를 사용하여 scm 작업
User B : GUI Pending Changes를 통해 Accept
User B : 파일 수정 후 GUI Pending Changes를 통해 SandBox 새로 고치기
User B : GUI Pending Changes를 통해 Checkin & Comment "Dog translation 02" & Deliver

파일을 수정하고 개인 리파지토리 작업공간에 체크인 및 변경세트 작성
scm
checkin Squawk(루트 폴더 이름)

변경세트에 주석 붙이기
scm changeset comment 1006(변경세스 식별 번호) "Dog translation 03"

파일 수정 후 개인 리파지토리 작업공간들 변경 상태 파악 (Pending Changes)
scm status

User B의 변경세트를 리파지토리 작업공간으로 허용
scm
accept -r ccmhost

허용 후 리파지토리 작업공간내 충돌 확인
scm conflicts -r ccmhost

충돌 해결 (예로만 참고, 실제는 두 파일 비교 병합 작업을 수행후 해결 필요)
scm resolve -r ccmhost --proposed Squawk/CoreSquawk/Dog.cpp (충돌이 난 파일이름)

충돌 해결 후 변경세트를 팀스트림으로 전달
scm deliver -r ccmhost -s "jazzy on Squawk CMD"(From 개인 리파지토리 작업공간)

콤포넌트 베이스라인를 개인 리파지토리 작업공간에서 만들고 팀스트림으로 전달
scm create baseline -r ccmhost "jazzy on Squawk CMD"(개인 리파지토리 작업공간) "Dog translated"(베이스라인명) "Squawk"(콤포넌트명)
scm deliver -r ccmhost -s "jazzy on Squawk CMD"(From 개인 리파지토리 작업공간)

----------------------------------------------------------------------------
내가 같은 파일을 수정하고 먼저 팀스트림으로 전달한 경우

내가 먼저 Cat 수정, 체크인 및 전달
scm checkin Squawk
scm changeset comment 1007 "Cat translation 01"
scm deliver -r ccmhost -s "jazzy on Squawk CMD"

User B : Cat 수정 및 체크인(Pending Changes GUI)
User B : 수정후 Pending Changes의 SandBox refresh
User B : Checkin "Cat translation 02"

User B : Cat 수정 내용 허용 및 충돌 해결 (Pending Changes GUI)
User B : Accept Incoming ChangeSet
User B : 충돌편집기 열기 및 수정 그리고 resoved as merged
User B : Deliver ChangeSet "Cat translation 02"