프로젝트 비교 및 병합
비교를 사용하면 두 프로젝트의 차이를 정확히 확인할 수 있으며, 안전하게 복사할 수 있는 부분에 대해서는 선택한 변경 사항을 한 프로젝트에서 다른 프로젝트로 병합할 수 있습니다. 다음과 같은 두 가지 일상적인 상황을 위해 만들어졌습니다.
- 환경 간 변경 사항 승격 — QA(개발) 프로젝트와 해당 프로덕션 프로젝트의 차이를 검토한 다음, 원하는 변경 사항만 프로덕션으로 옮깁니다.
- 이전 스냅샷 또는 사본과 비교하여 검토 — 프로젝트를 자신의 사본(예: 월별 복제본)과 비교하여 무엇이 변경되었는지 확인합니다.
전 과정에서 사용자가 제어합니다. 특정 항목을 선택하여 적용하기 전에는 아무것도 기록되지 않으며, 먼저 테스트 실행으로 검증할 수 있습니다.
대응 방식
섹션 제목: “대응 방식”두 프로젝트를 비교하려면 PlaidCloud가 왼쪽의 어느 항목이 오른쪽의 어느 항목에 해당하는지 결정해야 합니다. 방식은 자동으로 선택됩니다.
- 같은 프로젝트의 사본과 스냅샷은 내부 ID로 대응됩니다(복제본은 같은 ID를 유지합니다). 따라서 이름이 바뀐 항목도 정확하게 짝지어집니다.
- 독립 프로젝트(예: QA 프로젝트와 별도로 만든 프로덕션 프로젝트)는 ID를 공유하지 않으므로 이름으로 대응됩니다. 이 경우 항목에
(name-matched)태그가 붙습니다.
두 프로젝트를 따로 만들었기 때문에 QA와 프로덕션을 비교할 때는 이름 대응이 유용합니다. 하지만 한계도 있습니다. 이름이 중복된 항목은 항상 일대일로 짝지을 수는 없으며, ambiguous match로 표시된 항목은 같은 이름의 후보가 둘 이상이라는 뜻이므로 병합하기 전에 직접 검토하십시오.
세 번째 대응 방식도 있습니다. 한 프로젝트를 다른 프로젝트에서 복사하여 만든 경우에 사용하며, 기록된 복사 계보로 짝지으므로 이름이 바뀐 사본도 원본과 짝지어집니다. 이 방식은 자동으로 선택되지 않으며 다시 동기화 대상… 으로 요청해야 합니다. 자세한 내용은 복사해 온 프로젝트에서 다시 동기화하기를 참조하십시오.
비교 열기
섹션 제목: “비교 열기”- Analyze를 엽니다
- 상단 메뉴 표시줄에서 프로젝트를 선택합니다
- 시작할 프로젝트를 마우스 오른쪽 버튼으로 클릭하거나(또는 해당 프로젝트의 작업 메뉴를 사용하여) 비교 대상… 옵션을 선택합니다
- 프로젝트 비교 창에서 시작한 프로젝트가 소스로 채워져 있습니다
- 드롭다운에서 대상 프로젝트, 즉 비교할 프로젝트를 선택합니다
- 비교를 클릭합니다
두 프로젝트는 같은 워크스페이스에 있어야 합니다.
비교 결과 읽기
섹션 제목: “비교 결과 읽기”왼쪽에는 모든 차이가 범주별로 그룹화되어 표시됩니다. 워크플로(그 아래에 중첩된 단계), 변수, 차원, 편집기, UDF, 뷰, 테이블입니다.
각 항목에는 상태 배지가 표시됩니다.
- 추가됨 — 소스에는 있지만 대상에는 없습니다(대상에 새로 만들어집니다)
- 수정됨 — 양쪽에 모두 있지만 구성이 다릅니다
- 삭제됨 — 대상에는 있지만 소스에는 없습니다
- 변경 없음 — 양쪽이 동일합니다(기본적으로 숨겨짐)
변경된 항목을 선택하면 오른쪽에 세부 정보가 표시됩니다. 변경된 내용을 보여 주는 필드 / 소스 / 대상 테이블과 그 아래의 전체 구성 차이입니다. 항목의 차이가 매우 크면 잘려서 표시되며, 전체 차이 펼치기를 클릭하면 전체 버전을 불러옵니다.
목록 좁혀 보기
섹션 제목: “목록 좁혀 보기”- 이름 또는 경로로 필터링은 트리를 일치하는 항목으로 좁힙니다.
- 상태 확인란으로 추가됨, 수정됨, 삭제됨, 변경 없음 항목을 표시하거나 숨깁니다.
- 수동 확인 필요는 자동으로 병합할 수 없는 변경 사항만 표시합니다(아래 참조).
병합할 수 있는 항목
섹션 제목: “병합할 수 있는 항목”모든 차이를 프로젝트 간에 안전하게 복사할 수 있는 것은 아닙니다. 비교 결과는 각 항목에 레이블을 붙여 어떤 항목을 병합할 수 있는지 항상 알 수 있게 해 줍니다.
- 워크플로, 단계, 변수는 병합할 수 있습니다.
- 차원, 편집기, UDF, 뷰, 테이블은 보기 전용입니다. 검토할 수 있도록 비교 결과에는 나타나지만, 여기서 복사하는 것이 아니라 각각의 전용 도구를 사용하여 복사합니다.
병합 가능한 범주 안에서도 일부 개별 변경 사항에는 수동(잠금 표시)이 표시됩니다. 자동으로 적용하면 안전하지 않기 때문입니다. 세부 정보 창에서 그 이유와 대신 해야 할 일을 설명합니다. 가장 흔한 경우는 다음과 같습니다.
- 이름으로 대응된(QA 대 프로덕션) 비교의 단계는 검토 전용입니다. 단계의 구성은 환경별 연결과 에이전트를 참조할 수 있으므로 직접 복사합니다. 차이를 확인하여 대상에서 무엇을 변경해야 하는지 정확히 파악하십시오.
- 변수 삭제는 자동으로 적용되지 않습니다. 대상 프로젝트에서 직접 변수를 제거하십시오.
요약 줄에는 병합 가능 여부의 구분이 한눈에 표시됩니다. 예: “병합 가능 12개 · 보기 전용 5개”, “수동 확인 필요 3개.”
변경 사항 병합
섹션 제목: “변경 사항 병합”- 소스에서 대상으로 복사할 항목을 선택합니다. 모두 선택을 사용하면 현재 표시된 병합 가능한 항목을 모두 선택하고, 개별 행을 여러 개 선택할 수도 있습니다. 보기 전용 항목과 수동 항목은 선택할 수 없습니다.
- 테스트 실행을 클릭하면 아무것도 기록하지 않고 선택 항목을 검증합니다. PlaidCloud가 적용될 작업 수(신규 대 업데이트)를 보고하고 실패할 작업을 표시합니다.
- 테스트 실행 결과가 올바르면 테스트 실행 결과 또는 하단에서 적용을 클릭합니다.
- 병합 확인 대화 상자에서 작업을 확인합니다.
병합된 항목은 대상에서 자신의 ID를 유지하므로, 나중에 비교를 다시 실행하여 중복을 만들지 않고 추가 변경 사항을 병합할 수 있습니다.
문제가 생긴 경우
섹션 제목: “문제가 생긴 경우”- 대상이 변경됨 — 비교를 불러온 후 다른 사람이 대상을 수정했다면, 해당 작업을 덮어쓰지 않도록 병합이 중단됩니다. 비교를 새로 고친 다음 다시 적용하십시오.
- 병합이 부분적으로 적용됨 — 작업 하나가 중간에 실패하면 나머지는 남은 작업으로 보고됩니다. 원인을 해결한 다음 남은 작업 다시 시도를 선택하거나, 취소하고 새로 고치십시오.
복사해 온 프로젝트에서 다시 동기화하기
섹션 제목: “복사해 온 프로젝트에서 다시 동기화하기”비교는 워크스페이스의 모든 두 프로젝트 사이에서 사용할 수 있습니다. 하지만 대상이 소스에서 복사하여 만들어진 경우, 즉 프로젝트 복사로 기존 프로젝트에 복사한 경우 PlaidCloud는 대상의 어떤 개체가 소스의 어떤 개체에서 왔는지 기억합니다. 다시 동기화는 이 기록을 사용하여 ID와 이름으로 추측하는 대신 두 프로젝트가 실제로 연관된 방식대로 비교합니다.
덕분에 하나의 테넌트에서 개발, QA, 프로덕션을 별도의 프로젝트로 유지하면서 변경 사항을 순서대로 승격할 수 있습니다. 개발을 QA로 한 번 복사해 두면, 이후에는 QA를 개발과 다시 동기화할 때 그 이후 개발에서 변경된 내용만 표시되며, 선택한 부분을 QA로 옮길 수 있습니다. 그다음 같은 방식으로 QA를 프로덕션으로 옮깁니다. 내보내기도, 아카이브도, 두 번째 워크스페이스도 필요하지 않습니다.
이것이 중요한 이유
섹션 제목: “이것이 중요한 이유”독립적으로 만든 두 프로젝트를 일반 비교할 때는 ID를 공유하지 않으므로 항목을 이름으로 짝지어야 합니다. 이는 복사 과정에서 이름이 바뀌지 않는 한 잘 작동합니다. 프로젝트 복사가 이름이나 ID가 이미 대상에 있던 개체를 가져올 때는 들어오는 개체에 새 ID(이름 뒤에 copy 추가)를 부여하므로, 일반 비교에서는 이름이 바뀐 사본을 소스 원본과 무관한 것으로 보게 됩니다. 소스 항목은 추가됨으로, 대상에 있는 그 사본은 삭제됨으로 나란히 표시됩니다. 같은 개체의 두 절반을 보면서도 짝을 맞출 방법이 없는 셈입니다.
다시 동기화는 대신 계통, 즉 기록된 복사 계보로 짝을 지으므로 이름이 바뀌거나 번호가 다시 매겨진 개체도 원본과 짝지어지고 실제 변경 사항만 차이로 표시됩니다.
다시 동기화 실행
섹션 제목: “다시 동기화 실행”- Analyze를 엽니다
- 프로젝트를 선택합니다
- 복사해 온 원본, 즉 소스(예: 개발) 프로젝트를 마우스 오른쪽 버튼으로 클릭하거나 해당 프로젝트의 작업 메뉴를 사용하여 다시 동기화 대상… 옵션을 선택합니다
- 이전에 복사해 넣은 대상(예: QA)을 선택합니다
- 다시 동기화를 클릭합니다
창은 동일한 프로젝트 비교 창이며, 비교 결과 읽기, 병합할 수 있는 항목, 변경 사항 병합의 내용이 그대로 적용됩니다. 한 가지 차이점은 항목을 짝짓는 방식입니다.
사용할 계보가 없는 경우
섹션 제목: “사용할 계보가 없는 경우”다시 동기화하려면 두 프로젝트 사이에 기록된 복사가 있어야 합니다. 프로젝트 복사로 연결된 적이 없거나 일부만 연결된 쌍을 다시 동기화하면, PlaidCloud는 그런 척하지 않고 사실대로 알려 줍니다.
- 계보가 전혀 없음 — 비교가 일반 대응으로 대체되었으며 다시 동기화가 아니라는 배너가 표시됩니다. 이전 복사로 이름이 바뀌었을 항목에 대한 추가됨/삭제됨 구분을 포함하여 일반 비교와 똑같이 동작합니다. 서로 관련 없는 두 프로젝트를 다시 동기화하거나, 프로젝트 복사가 아닌 아카이브 가져오기로 연결된 프로젝트 쌍을 다시 동기화할 때 이렇게 표시됩니다.
- 일부 계보만 있음 — 복사가 일부 범주만 다룬 경우, 배너에 대체된 범주의 이름이 표시됩니다. 해당 범주는 이름으로 짝지어지며, QA 대 프로덕션 비교와 같은 안전한 부분 집합이 병합됩니다. 즉 변수와 워크플로 레코드 변경 사항은 이동하고, 단계와 새로 추가된 워크플로는 검토 전용이 됩니다(병합할 수 있는 항목 참조).
어느 경우든 창에 표시되고 병합되는 것은 실제로 얻은 짝짓기 결과입니다. 다시 동기화가 계보로 일치시켰다고 알리면서 조용히 이름 일치로 격하되는 일은 없습니다.