사용 기록 이벤트가 마이그레이션되는 방식
업데이트: 2007년 11월
이 항목에서는 Visual SourceSafe에서 로깅한 사용 기록 이벤트가 Team Foundation으로 마이그레이션되는 방식을 설명합니다.
사용 기록 이벤트
사용 기록 이벤트는 Team Foundation의 해당되는 영역으로 마이그레이션됩니다. 이를 통해 소스 파일의 사용 기록을 유지 관리할 수 있습니다. 파일 버전에 대한 사용 기록은 사용 기록을 만든 이벤트를 재생하면 만들어집니다. 다음 표에서는 각 사용 기록 이벤트가 마이그레이션되는 방식을 보여 줍니다.
이벤트 |
마이그레이션되는 방식 |
||
---|---|---|---|
파일 또는 폴더 추가 |
파일 추가 이벤트는 Team Foundation에 파일의 첫 번째 버전을 만듭니다. 폴더 추가 이벤트는 Team Foundation에 폴더의 첫 번째 버전을 만듭니다. 추가된 폴더에 파일이나 하위 폴더가 포함되어 있으면 해당 파일과 폴더가 별도로 추가됩니다. |
||
파일 편집 |
파일 편집 이벤트는 Team Foundation에 파일의 새 버전을 만듭니다. |
||
파일에 레이블 지정 |
Team Foundation에서 파일이나 폴더 버전에 레이블을 적용합니다. Visual SourceSafe에서 명시적이거나 암시적인 방법으로 파일에 레이블을 지정할 수 있습니다. Visual SourceSafe에서 파일에 레이블을 명시적으로 지정한 경우, 파일의 새 버전이 만들어지고 해당 레이블을 가져오면 파일의 이전 버전에 해당하는 파일의 내용을 가져오게 됩니다. 변환기에서는 명시적 레이블을 마이그레이션하기 위해 Team Foundation에서 Visual SourceSafe의 레이블이 지정된 버전에 해당하는 버전에 레이블을 적용합니다. 그러나 새 버전은 만들지 않습니다. Visual SourceSafe에서 폴더에 레이블을 적용한 경우에는 해당 폴더에 포함된 모든 파일과 하위 폴더에 암시적으로 레이블이 적용되지만 새 버전은 만들어지지 않습니다. 암시적 레이블의 경우, 폴더의 명시적 레이블을 마이그레이션하는 동안 Team Foundation의 해당 버전에 자동으로 레이블이 지정되므로 변환기에서는 어떠한 작업도 수행하지 않습니다. |
||
폴더에 레이블 지정 |
Visual SourceSafe에서 폴더에 레이블을 적용하면 해당 폴더에 포함된 모든 파일과 하위 폴더에 암시적으로 레이블이 적용되고 변환기가 새 버전을 만들지 않습니다. 변환기는 이러한 폴더를 마이그레이션하는 동안 Team Foundation의 해당 폴더 버전에 레이블을 적용합니다. 그러면 레이블이 적용된 폴더 내의 현재 파일 및 폴더 버전에 자동으로 레이블이 적용됩니다. |
||
파일 또는 폴더 이름 바꾸기, 삭제 또는 삭제 취소 |
변환기는 파일이나 폴더에 대한 이름 바꾸기, 삭제 및 삭제 취소 이벤트를 마이그레이션하는 동안 해당 이벤트를 재생하여 Team Foundation에 파일이나 폴더의 새 버전을 만듭니다. |
||
폴더 이동 |
폴더 이동 이벤트는 Team Foundation에 폴더의 새 버전을 만듭니다. Visual SourceSafe에서 이동 명령은 폴더의 내용이나 사용 기록을 변경하지 않습니다. 대신 이전 및 새 부모 폴더의 사용 기록에 이 명령이 기록됩니다. 폴더를 이동하면 Visual SourceSafe에서 부모 폴더의 이전 버전을 다시 만들 수 없습니다. 마이그레이션이 완료된 후 이전 버전을 다시 만들 수 있는데, 이는 폴더 이동 이벤트가 마이그레이션되는 방식 때문입니다. 예를 들어 /B라는 하위 폴더가 있는 $/A 폴더에 "LABEL1" 레이블을 적용하고 나중에 /B 하위 폴더를 $/C라는 다른 폴더로 이동했다고 가정해 보십시오. Visual SourceSafe에서 $/A에 대한 "LABEL1"을 가져오면 $/A/B를 가져올 수 없습니다. 그러나 Team Foundation으로 마이그레이션한 후 레이블을 가져오면 이동된 폴더($/A/B)를 가져올 수 있습니다. 이동된 폴더를 마이그레이션할 때, 어떤 항목을 마이그레이션하는지에 따라서 각각 결과가 다른 세 가지 경우가 가능합니다.
|
||
파일 공유 |
Visual SourceSafe에서 여러 폴더 간에 파일을 공유할 수 있습니다. 공유 파일에서 변경된 내용은 해당 파일을 공유하는 모든 폴더로 복제됩니다. Visual SourceSafe 내부에서는 공유 파일 간에 소프트 링크를 만듭니다. 폴더는 Visual SourceSafe에서 기술적으로는 공유되지 않습니다. 즉, Visual SourceSafe에서 폴더를 공유하면 폴더의 복사본이 만들어지고 폴더 내의 모든 파일이 공유됩니다. Team Foundation에는 공유에 해당하는 기능이 없습니다. 공유 파일은 공유를 시작했을 때의 파일 버전과 동일한 내용을 사용하여 대상 폴더에 해당 버전을 만드는 방식으로 마이그레이션됩니다. 그 후 공유 파일에서 변경된 내용이 변환기를 통해 두 위치 모두에 복제됩니다. |
||
파일 공유 및 삭제 |
삭제 후 수행된 모든 작업이 무시된다는 점을 제외하고는, 공유된 다음 삭제된 파일은 공유 파일로 처리됩니다. 삭제한 공유 파일의 삭제를 나중에 취소하면 변환기에서는 편집이나 이름 바꾸기와 같은 각 작업을 마이그레이션하는 동안 오류를 보고합니다. 그러나 삭제 취소 작업을 마이그레이션하는 동안 변환기는 해당 파일에 대해 삭제 취소-편집 작업을 수행하여 Visual SourceSafe의 삭제 취소된 파일과 동일한 내용이 되도록 합니다. 삭제한 공유 파일의 이름을 나중에 바꾸면 변환기에서는 이름 바꾸기 작업을 마이그레이션하는 동안 오류를 보고합니다. 이름 바꾸기 작업 후 수행된 작업은 마이그레이션되지 않고 변환기에서 각 작업에 대해 오류를 보고합니다. |
||
파일 분기 |
공유는 분기의 전제 조건입니다. 따라서 변환기가 Visual SourceSafe 분기를 Team Foundation 버전 제어 분기로 매핑할 수 없습니다. 공유 파일을 마이그레이션하면 대상 폴더에 공유 파일의 복제본이 만들어집니다. 분기 이벤트를 마이그레이션하면 공유 파일에서 변경한 내용이 더 이상 두 위치로 복제되지 않습니다. 따라서 분기에 대한 변경 내용이 Team Foundation의 해당 복사본에 마이그레이션됩니다. 마이그레이션 보고서에는 Visual SourceSafe에서 공유되거나 분기된 파일이 포함된 폴더 목록이 있습니다. |
||
보관 |
Visual SourceSafe에서 파일이나 폴더를 보관할 때 파일이나 폴더에 대한 사용 기록을 완전히 제거할 수도 있고 파일이나 폴더의 사용 기록에서 일부 버전만 제거할 수도 있습니다. 사용 기록을 제거한 경우에는 변환기가 제거된 버전을 마이그레이션할 수 없습니다. 보관 이벤트는 무시합니다. |
||
복원 |
Visual SourceSafe에서 복원할 때는 보관된 파일이나 폴더의 사용 기록을 복원합니다. 변환기는 파일이나 폴더에 대한 복원된 사용 기록을 마이그레이션합니다. 복원 이벤트는 무시합니다. |
||
고정 및 고정 해제 |
Team Foundation 버전 제어에서는 고정이 지원되지 않습니다. 따라서 고정된 모든 파일을 마이그레이션할 때는 항상 두 개의 레이블이 만들어집니다. PINNED_LATEST 레이블은 고정된 파일의 고정된 버전과 고정되지 않은 파일의 최신 버전에 적용됩니다. PINNED 레이블은 고정된 파일의 고정된 버전에만 적용됩니다. 마이그레이션 후에 PINNED_LATEST 레이블은 Visual SourceSafe의 최신 버전 가져오기 기능을 사용할 때와 동일한 파일을 가져옵니다. 그러나 파일이 고정된 후에 파일 이름을 바꾸거나 파일을 삭제하는 등 체크 인 이외의 이벤트가 발생한 경우에는 PINNED_LATEST 레이블이 다른 파일을 반환할 수도 있습니다. |
참고 항목
개념
성능 향상을 위해 변환기에서 변경 집합을 그룹화하는 방식