다음을 통해 공유


솔루션 파일로 원본 제어 사용

 

게시 날짜: 2017년 1월

적용 대상: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online

SolutionPackager 도구는 모든 원본 제어 시스템에 사용할 수 있습니다. 폴더에 솔루션 .zip 파일의 압축을 푼 후 원본 제어 시스템에 파일을 추가하고 제출합니다. 그런 다음 이러한 파일은 동일한 새 솔루션 .zip 파일로 압축될 수 있는 다른 컴퓨터에서 동기화될 수 있습니다.

압축을 푼 구성 요소 파일을 원본 제어에서 사용할 때 중요한 점은 모든 파일을 원본 제어에 추가하면 불필요한 중복이 발생할 수 있다는 점입니다. 각 구성 요소 유형에 대해 생성되는 파일과 원본 제어에 사용하기 좋은 파일을 보려면 Solution component file reference (SolutionPackager)를 참조하십시오.

솔루션에 추가 사용자 지정 및 변경 내용이 필요하므로 개발자는 기존 수단을 통해 구성 요소를 편집하거나 만들고, .zip 파일을 만들기 위해 다시 내보내고, 동일한 폴더에서 압축된 솔루션 파일의 압축을 풀어야 합니다.

중요

압축을 푼 구성 요소 파일 및 .zip 파일은 수동으로 편집할 수 없습니다.

SolutionPackager 도구에서 구성 요소 파일의 압축을 풀 때 파일 내용이 동일한 경우 같은 이름의 기존 구성 요소 파일을 덮어쓰지 않습니다. 또한 도구는 특정 파일이 작성되지 않은 콘솔 창에서 경고를 생성하는 구성 요소 파일에서 읽기 전용 특성을 따릅니다. 따라서 사용자가 원본 제어에서 변경되는 최소한의 파일 집합을 체크 아웃할 수 있습니다./clobber 매개 변수는 읽기 전용 파일을 다시 정의하고 작성하거나 삭제하는 데 사용할 수 있습니다./allowWrite 매개 변수는 실제로 파일을 작성하거나 삭제하지 않고 추출 작업이 미치는 영향을 평가하기 위해 사용할 수 있습니다. 자세한 로깅으로 /allowWrite 매개 변수를 사용하는 것은 효과적입니다.

원본 제어에서 최소한의 파일 집합을 체크 아웃하여 추출 작업을 완료한 후 개발자는 원본 파일의 모든 다른 유형과 마찬가지로 변경된 파일을 원본 제어에 다시 전송할 수 있습니다.

이 항목의 내용

팀 개발

솔루션 만들기

솔루션 수정

팀 개발

여러 개발자가 동일한 솔루션 구성 요소에서 작업하는 경우 두 개발자의 변경 내용이 한 파일에서 변경될 경우 충돌이 발생할 수 있습니다. 이 문제는 개별적으로 편집할 수 있는 각 구성 요소 또는 하위 구성 요소를 다른 파일로 분해하여 최소화합니다. 다음 예를 살펴 보십시오.

  1. 개발자 A와 B가 동일한 솔루션에서 작업하고 있습니다.

  2. 독립적인 컴퓨터에서 두 사람 모두 원본 제어에서 솔루션의 최신 원본을 가져와서, 압축하고 비관리형 솔루션 .zip 파일을 독립적인 Microsoft Dynamics 365 조직으로 가져옵니다.

  3. 개발자 A는 "활성 연락처" 시스템 보기 및 연락처 엔터티의 기본 양식을 사용자 지정합니다.

  4. 개발자 B는 거래처 엔터티의 기본 양식을 사용자 지정하고 "연락처 조회 보기"를 변경합니다.

  5. 두 개발자 모두 비관리형 솔루션 .zip 파일을 내보내고 추출합니다.

    1. 개발자 A는 연락처 기본 양식에 대한 파일 하나와 "활성 연락처" 보기에 대한 파일 하나를 체크 아웃해야 합니다.

    2. 개발자 B는 거래처 기본 양식에 대한 파일 하나와 "연락처 조회 보기"에 대한 파일 하나를 체크 아웃해야 합니다.

  6. 각자의 변경 내용이 별도 파일에 적용되었으므로 두 개발자 모두 순서에 상관 없이 제출할 수 있습니다.

  7. 양쪽 모두 제출을 완료한 후 2단계를 반복하고 독립적인 조직에서 계속 추가 변경할 수 있습니다. 각자 자신의 작업을 덮어쓰지 않고 양쪽 변경 내용 모두 갖습니다.

앞의 예제는 별도 파일에 대한 변경 내용이 있는 경우에만 작동합니다. 독립적인 사용자 지정은 한 파일 내에서 변경할 수 밖에 없습니다. 위의 예제를 기반으로 개발자 B가 "활성 연락처" 보기를 사용자 지정하는 동안 개발자 A도 "활성 연락처" 보기를 사용자 지정한 경우를 고려해 봅니다. 이 새 예제에서는 이벤트의 순서가 중요합니다. 전체 기록된 이러한 문제를 조정하는 올바른 프로세스는 다음과 같습니다.

  1. 개발자 A와 B가 동일한 솔루션에서 작업하고 있습니다.

  2. 독립적인 컴퓨터에서 두 사람 모두 원본 제어에서 솔루션의 최신 원본을 가져와서, 압축하고, 비관리형 솔루션 .zip 파일을 독립적인 조직으로 가져옵니다.

  3. 개발자 A는 "활성 연락처" 시스템 보기 및 연락처 엔터티의 기본 양식을 사용자 지정합니다.

  4. 개발자 B는 거래처 엔터티의 기본 양식을 사용자 지정하고 "활성 연락처"를 변경합니다.

  5. 두 개발자가 비관리형 솔루션을 내보냅니다.zip 파일 및 추출물.

    1. 개발자 A는 연락처 기본 양식에 대한 파일 하나와 "활성 연락처" 보기에 대한 파일 하나를 체크 아웃해야 합니다.

    2. 개발자 B는 거래처 기본 양식에 대한 파일 하나와 "활성 연락처" 보기에 대한 파일 하나를 체크 아웃해야 합니다.

  6. 개발자 A가 먼저 준비되었습니다.

    1. 원본 제어에 제출하기 전에 자신의 변경 내용과 충돌하는 이전 체크 인이 없는지 확인하도록 최신 원본을 가져와야 합니다.

    2. 충돌이 없으므로 제출할 수 있습니다.

  7. 개발자 B는 개발자 A 다음에 준비됩니다.

    1. 제출하기 전에 자신의 변경 내용과 충돌하는 이전 체크 인이 없는지 확인하도록 최신 원본을 가져와야 합니다.

    2. 최신 원본을 마지막으로 검색한 이후 "활성 연락처"에 대한 파일이 수정되었으므로 충돌이 있습니다.

    3. 개발자 B는 충돌을 조정해야 합니다. 사용 중인 원본 제어 시스템의 기능은 이 프로세스를 도울 수 있습니다. 그렇지 않으면 다음 옵션이 모두 실행 가능합니다.

      1. 개발자 B는 원본 제어 기록을 통해 가능한 경우 개발자 A가 변경한 이전 내용을 볼 수 있습니다. 직접적인 의사 소통을 통해 변경될 때마다 논의할 수 있습니다. 그런 다음 개발자 B는 합의한 내용 대로 조직을 업데이트하기만 하면 됩니다. 그런 다음 충돌 파일을 내보내고, 추출하고, 덮어쓰고 제출합니다.

      2. 원본 제어에서 로컬 파일을 덮어쓸 수 있도록 합니다. 개발자 B는 솔루션을 압축하고 조직으로 가져온 후 보기의 상태를 평가하고 필요에 따라 다시 사용자 지정합니다. 다음으로 충돌 파일을 내보내고, 추출하고, 덮어쓸 수 있습니다.

      3. 이전 변경 내용이 불필요한 것으로 간주될 경우 개발자 B는 파일 사본으로 원본 제어의 버전을 덮어쓸 수 있도록 하고 제출합니다.

공유 조직 또는 독립적인 조직에서 작업할 때 Microsoft Dynamics 365 솔루션의 팀 개발에는 서로의 작업을 인식하도록 공통 솔루션에서 적극적으로 작업해야 합니다.SolutionPackager 도구가 이러한 요구를 완벽하게 제거하지는 않지만 원본 제어 수준에서의 충돌하지 않는 변경 내용을 간단하게 병합할 수 있도록 하고 충돌이 발생한 구성 요소를 간단하게 사전에 강조 표시합니다.

다음 섹션은 팀에서 개발할 때 원본 제어에서 SolutionPackager도구를 효과적으로 사용하는 일반적인 프로세스입니다. 이러한 과정은 공유 조직에서 내보내기를 수행하는 개발자의 변경 내용만 아니라 내보내기와 추출 시 자연스럽게 현재 솔루션 내의 모든 변경 내용을 포함하지만 독립적인 조직 또는 공유 개발 조직에서 동일하게 작동합니다. 마찬가지로 솔루션 .zip 파일을 가져올 때 모든 구성 요소를 덮어쓰는 기본 동작이 발생합니다.

솔루션 만들기

다음 절차는 솔루션을 처음 만들 때 사용하는 일반적인 단계를 확인합니다.

  1. 정상 조직의 Microsoft Dynamics 365 서버에서 솔루션을 만든 후 필요에 따라 구성 요소를 추가하거나 만듭니다.

  2. 체크 인할 준비가 되면 다음을 수행합니다.

    1. 비관리형 솔루션을 내보냅니다.

    2. SolutionPackager 도구를 사용하여 솔루션을 구성 요소 파일에 추출합니다.

    3. 이렇게 추출한 구성 요소 파일에서 필요한 파일을 원본 제어에 추가합니다.

    4. 이러한 변경 내용을 원본 제어에 제출합니다.

솔루션 수정

다음 절차는 기존 솔루션을 수정할 때 사용하는 일반적인 단계를 확인합니다.

  1. 동기화하거나 최신 솔루션 구성 요소 파일 원본을 가져옵니다.

  2. SolutionPackager 도구를 사용하여 구성 요소 파일을 비관리형 솔루션 .zip 파일에 압축합니다.

  3. 조직에 비관리형 솔루션 파일을 가져옵니다.

  4. 솔루션을 사용자 지정하고 필요에 따라 편집합니다.

  5. 원본 제어에 변경 내용을 체크 인할 준비가 되면 다음을 수행합니다.

    1. 비관리형 솔루션을 내보냅니다.

    2. SolutionPackager 도구를 사용하여 내보낸 솔루션을 구성 요소 파일에 추출합니다.

    3. 동기화하거나 원본 제어에서 최신 원본을 가져옵니다.

    4. 충돌이 있을 경우 조정합니다.

    5. 변경 내용을 원본 제어에 제출합니다.

2단계와 3단계는 개발 조직에서 추가 사용자 지정이 발생하기 전에 수행해야 합니다. 5 단계에서 b단계는 c단계 전에 완료해야 합니다.

참고 항목

팀 개발을 위한 솔루션 도구
Solution component file reference (SolutionPackager)
SolutionPackager 도구를 사용하여 솔루션 파일 압축 및 추출

Microsoft Dynamics 365

© 2017 Microsoft. All rights reserved. 저작권 정보