이 문서에서는 Microsoft Fabric Git 통합 도구에서 다음과 같은 기본 작업을 안내합니다.
시작하기 전에 Git 통합 개요를 읽어보는 것이 좋습니다.
필수 조건
Git을 Microsoft Fabric 작업 영역과 통합하려면 Fabric 및 Git 모두에 대해 다음 필수 구성 요소를 설정해야 합니다.
패브릭 필수 구성 요소
Git 통합 기능에 접근하려면 Fabric 용량이 필요합니다. 지원되는 패브릭 항목을 모두 사용하려면 패브릭 용량이 필요합니다. 아직 계정이 없으시다면, 무료 평가판에 등록하세요. 이미 Power BI Premium 용량을 보유한 고객은 해당 용량을 사용할 수 있지만, 일부 Power BI SKU는 Power BI 항목만 지원한다는 점을 유념하세요.
또한 관리 포털에서 다음 테넌트 스위치를 사용하도록 설정해야 합니다.
- 사용자는 패브릭 항목을 만들 수 있습니다 - Fabric artifacts 사용의 경우 필요
- 사용자는 작업 영역 항목을 Git 리포지토리와 동기화할 수 있습니다.
- 작업 영역을 만듭니다(새 작업 영역 으로 분기하려는 경우에만).
- 사용자는 작업 영역 항목을 GitHub 리포지토리와 동기화할 수 있습니다: GitHub 사용자만
이러한 스위치는 조직의 설정에 따라 테넌트 관리자, 용량 관리자 또는 작업 영역 관리자가 사용하도록 설정할 수 있습니다.
Git 필수 구성 요소
Git 통합은 현재 Azure DevOps 및 GitHub 지원됩니다. 패브릭 작업 영역과 Git 통합을 사용하려면 Azure DevOps 또는 GitHub 다음이 필요합니다.
- 동일한 Fabric 사용자에게 등록된 Active Azure DevOps 계정(Azure DevOps 조직이 패브릭 테넌트가 아닌 다른 테넌트에 있는 경우에도 지원됨). 체험 계정을 만듭니다.
- 기존 리포지토리에 Access.
작업 영역을 Git 리포지토리에 연결
Git 리포지토리에 연결
작업 영역 관리자만 작업 영역을 리포지토리에 연결할 수 있지만 연결되면 권한이 있는 모든 사용자가 작업 영역에서 작업할 수 있습니다. 관리자가 아닌 경우 관리자에게 연결과 관련된 도움을 요청하세요. 작업 영역을 Azure 또는 GitHub 리포지토리에 연결하려면 다음 단계를 수행합니다.
Fabric에 로그인하고 연결할 작업 영역으로 이동합니다.
작업 영역 설정으로 이동합니다.
Git 통합을 선택합니다.
Git 공급자를 선택합니다. 현재 Azure DevOps 및 GitHub 지원됩니다.
Azure DevOps를 선택하는 경우 Connect를 선택하여 Fabric에 로그인한 Microsoft Entra 사용자에게 등록된 Azure Repos 계정에 자동으로 로그인합니다.
다른 계정을 사용하여 Fabric에서 Azure 이미 로그인한 경우 목록에서 계정을 선택하고 Connect 선택합니다.
Fabric에서 처음 로그인하거나 새 계정을 추가하려는 경우 계정 추가를 선택합니다.
처음 연결하는 경우 사용자에게 권한을 부여해야 합니다. 다음 정보를 제공합니다.
- 표시 이름 - 각 사용자에 대해 고유해야 합니다.
-
Azure DevOps URL - Azure DevOps 리포지토리의 URL입니다. URL은
https://dev.azure.com/{organization}/{project}/_git/{repository}또는https://{organization}.visualstudio.com/{project}/_git/{repo}형식이어야 합니다. -
인증 - OAuth2 또는 서비스 주체를 사용하여 인증할 수 있습니다. 자세한 내용은
Azure DevOps - 서비스 주체와 Git 통합
로그인한 후, Fabric이 계정에 접근할 수 있도록 Connect를 선택하세요.
작업 영역에 연결
작업 영역이 이미 Azure DevOps/GitHub 연결되어 있는 경우 공유 작업 영역에 연결 지침을 따릅니다.
드롭다운 메뉴에서 연결하려는 분기에 대해 다음 세부 정보를 지정합니다.
- Organization
- Project
- Git 리포지토리.
- 분기. 드롭다운 메뉴를 사용하여 기존 분기를 선택하거나 + 새 분기를 선택하여 새 분기를 만듭니다. 한 번에 하나의 분기에만 연결할 수 있습니다.
- 폴더(기존 폴더의 이름을 입력하거나 이름을 입력하여 새 폴더를 만듭니다. 폴더 이름을 비워 두면 루트 폴더에 콘텐츠가 만들어집니다. 한 번에 하나의 폴더에만 연결할 수 있습니다.)
연결 및 동기화를 선택합니다.
초기 동기화 중에 작업 영역 또는 Git 분기가 비어 있으면 콘텐츠가 비어 있지 않은 위치에서 빈 위치로 복사됩니다. 작업 영역과 Git 분기 모두에 콘텐츠가 있는 경우 동기화를 진행해야 하는 방향을 묻는 메시지가 표시됩니다. 이 초기 동기화에 대한 자세한 내용은 연결 및 동기화를 참조하세요.
연결한 후 작업 영역에는 연결된 분기, 분기의 각 항목 상태 및 마지막 동기화 시간을 볼 수 있는 소스 제어에 대한 정보가 표시됩니다.
작업 영역을 Git 분기 와 동기화된 상태로 유지하려면 작업 영역에서 변경한 내용을 Git 분기에 커밋하고 누구든 Git 분기에 대한 새 커밋을 만들 때마다 작업 영역을 업데이트합니다.
git에 변경 내용 커밋
Git 폴더에 성공적으로 연결되면 평소와 같이 작업 영역을 편집합니다. 저장한 모든 변경 내용은 작업 영역에만 저장됩니다. 준비가 되면 변경 내용을 Git 분기에 커밋하거나 변경 내용을 실행 취소하고 이전 상태로 되돌릴 수 있습니다.
커밋에 대해 자세히 읽어보세요.
Git 분기에 변경 내용을 커밋하려면 다음 단계를 수행합니다.
작업 영역으로 이동합니다.
소스 제어 아이콘을 선택합니다. 이 아이콘은 커밋되지 않은 변경 수를 보여줍니다.
소스 제어 패널에서 변경 내용을 선택합니다. 변경한 모든 항목과 항목이 새
항목인지, 수정
되었는지, 충돌
하는지, 같은 변경
내용인지 또는 삭제되었는지
를 나타내는 아이콘과 함께 목록이 나타납니다.커밋할 항목을 선택합니다. 항목을 모두 선택하려면 맨 위 확인란을 선택합니다.
상자에 메모를 추가합니다. 메모를 추가하지 않으면 기본 메시지가 자동으로 추가됩니다.
커밋을 선택합니다.
변경 내용이 커밋되면 커밋된 항목이 목록에서 제거되고 작업 영역은 동기화된 새 커밋을 가리킵니다.
커밋이 성공적으로 완료되면 선택한 항목의 상태가 커밋되지 않음에서 동기화됨으로 변경됩니다.
Git에서 작업 영역 업데이트
연결된 Git 분기에 대한 새 변경 내용을 커밋할 때마다 관련 작업 영역에 알림이 표시됩니다. 원본 제어 패널을 사용하여 최신 변경 내용, 병합 또는 되돌리기를 작업 영역으로 끌어오고 라이브 항목을 업데이트합니다. 폴더에 대한 변경 내용도 업데이트됩니다. 업데이트에 대해 자세히 읽어보세요.
작업 영역을 업데이트하려면 다음 단계를 수행합니다.
- 작업 영역으로 이동합니다.
- 소스 제어 아이콘을 선택합니다.
- 소스 컨트롤 패널에서 Updates를 선택합니다. 마지막 업데이트 이후 브랜치에서 변경된 모든 항목이 표시된 목록이 나타납니다.
- 모두 업데이트를 선택합니다.
- 확인 대화 상자에서 업데이트를 선택합니다.
업데이트가 성공적으로 완료되면 항목 목록이 제거되고 작업 영역은 동기화된 새 작업 영역을 가리킵니다.
업데이트가 성공적으로 완료되면 항목의 상태가 동기화됨으로 바뀝니다.
Git에서 작업 영역 연결 끊기
작업 영역 관리자만 Git 리포지토리에서 작업 영역의 연결을 끊을 수 있습니다. 관리자가 아닌 경우 관리자에게 연결 끊기와 관련된 도움을 요청하세요. 관리자인데 리포지토리의 연결을 끊으려면 다음 단계를 수행합니다.
- 작업 영역 설정으로 이동합니다.
- Git 통합을 선택합니다.
- 작업 영역 연결 끊기를 선택합니다.
- 다시 연결 끊기를 선택하여 확인합니다.
사용 권한
작업 영역에서 수행할 수 있는 작업은 작업 영역과 Git 리포지토리 둘 다에서 사용 권한에 따라 달라집니다. 사용 권한에 대한 자세한 내용은 사용 권한을 참조하세요.
고려 사항 및 제한 사항
일반 Git 통합 제한 사항
- 패브릭의 인증 방법은 적어도 Git의 인증 방법만큼 강력해야 합니다. 예를 들어 Git에 다단계 인증이 필요한 경우 Fabric에도 다단계 인증이 필요합니다.
- Analysis Services에 연결된 Power BI 데이터 세트는 현재 지원되지 않습니다.
- 하나의 아티팩트에서 작업 영역 ID를 사용하여 Git에 커밋하는 경우 동일한 ID에 연결된 작업 영역에서만 업데이트(패브릭 작업 영역으로 다시)할 수 있습니다. "이 기능은 '브랜치 아웃' 같은 기능에도 영향을 미치므로 주의해야 합니다."
- 하위 모듈은 지원되지 않습니다.
- 소버린 클라우드는 지원되지 않습니다.
- 작업 영역에 수백 개의 항목이 포함된 경우, 더 작은 산출물 집합으로 분할하는 것이 좋습니다. 각 집합은 별도의 작업 영역에 배치되고 다른 Git 분기에 연결되거나 다른 폴더로 구성된 단일 분기에 연결되어야 합니다.
- Azure DevOps는 Enable IP 조건부 Access 정책 유효성 검사 사용하도록 설정된 경우 지원되지 않습니다.
- 작업 영역과 Git 리포지토리가 서로 다른 두 지역에 있는 경우 테넌트 관리자는 지역 간 내보내기를 사용하도록 설정해야 합니다.
- 조직에서 조건부 액세스를 구성한 경우 Power BI Service의 인증이 예상대로 작동하도록 동일한 조건이 설정되어 있는지 확인합니다.
- 다음 커밋 크기 제한이 적용됩니다.
- 서비스 주체와 함께 Azure DevOps 커넥터를 사용하는 25MB.
- 기본 SSO(Single Sign-On) Microsoft Entra ID 계정과 사용자 주체를 사용하여 Azure DevOps 커넥터를 통해 125MB.
GitHub Enterprise 제한 사항
일부 GitHub Enterprise 버전 및 설정은 지원되지 않습니다. 예시:
- custom domain 있는 GitHub Enterprise Server는 인스턴스에 공개적으로 액세스할 수 있더라도 지원되지 않습니다.
- 프라이빗 네트워크에서 호스트되는 엔터프라이즈 서버 GitHub
- IP 허용 목록
Azure DevOps에서 GitHub Enterprise로의 마이그레이션 고려 사항
팀에서 패브릭 Git 통합을 사용하고 Azure DevOps에서 GitHub Enterprise로의 마이그레이션을 평가하는 경우 Git 통합 기능이 영향을 받지 않도록 유효성 검사 테스트를 실행하는 것이 좋습니다. 패브릭 Git 통합은 위에서 설명한 대로 Azure DevOps와 GitHub Enterprise 간의 기능 및 제한 사항이 다른 기본 Git 공급자 API를 사용합니다.
Git 통합과 휴지통 항목 복구 동작 간의 차이점
Git 통합을 사용하는 경우 Git 작업과 휴지통 복구의 조합을 통해 삭제된 항목을 다시 만들거나 복원하는 시나리오에서 예기치 않은 동작이 발생할 수 있습니다. 이는 Git 작업(예: Git에서 실행 취소 또는 업데이트)이 새 항목 ID를 할당하여 삭제된 항목을 다시 만드는 반면 휴지통에서 항목을 복원하면 원래 항목 ID가 유지되므로 발생합니다. 따라서 ID가 다른 중복 항목이 작업 영역에 있을 수 있으므로 Git 통합이 예상대로 작동하지 않을 수 있으며 기존 종속성에도 영향을 줄 수 있습니다.
완화 방법
Git Integration에서 다시 만든 항목을 삭제합니다. 중복 항목이 제거되면 Git 작업이 정상적으로 다시 시작됩니다.
추가 참고 사항
Git 통합은 항목 정의만 다시 만들고 항목 데이터를 복원하지 않습니다. 반면, 휴지통에서 항목을 복원하면 항목 정의와 해당 데이터가 모두 복원됩니다.
배포 파이프라인의 차이점을 확인하려면 설명서를 확인하세요.
작업 영역 제한 사항
- 작업 공간 관리자만 Git 리포지토리에 대한 연결을 관리할 수 있습니다. 여기에는 연결, 연결 끊기 및 브랜치 추가가 포함됩니다.
연결되면 권한이 있는 모든 사용자가 작업 영역에서 작업할 수 있습니다. - 템플릿 앱이 설치된 작업 영역은 Git에 연결할 수 없습니다.
- MyWorkspace 는 Git 공급자에 연결할 수 없습니다.
- 작업 영역에는 최대 1,000개의 항목이 포함될 수 있습니다. Git 분기에 1,000개 이상의 항목이 포함된 경우 콘텐츠와 작업 영역의 동기화가 실패합니다. 이러한 제한을 방지하려면 아티팩트를 더 작은 집합으로 분할하는 것이 좋습니다. 각 집합은 별도의 작업 영역에 배치되고 다른 Git 분기에 연결되거나 단일 분기 내의 다른 폴더로 구성되어야 합니다. 추가 읽기는 작업 영역 항목 제한을 따릅니다.
분기 및 폴더 제한 사항
- 분기 이름의 최대 길이는 244자입니다.
- 파일 이름에 대한 전체 경로의 최대 길이는 250자입니다. 긴 이름은 실패합니다.
- 최대 파일 크기는 25MB입니다.
- 폴더 구조는 최대 10 수준 깊이까지 유지됩니다.
- 결과가 신뢰할 수 없으므로 Git 통합을 사용하여 배포한 후 서비스에서 .pbix 로 보고서/데이터 세트를 다운로드하는 것은 권장되지 않습니다. Power BI Desktop을 사용하여 보고서/데이터 세트를 .pbix로 다운로드하는 것이 좋습니다.
- 항목의 표시 이름에 이러한 특성이 있으면 Git 폴더의 이름이 논리 ID(Guid)로 바뀌고 다음을 입력합니다.
- 256자를 초과하는 경우
- 으로 끝난다. 또는 공백으로
- 디렉터리 이름 제한에 설명된 대로 금지된 문자를 포함합니다.
- 폴더가 있는 작업 영역을 Git에 연결하는 경우 해당 폴더 구조 가 다른 경우 Git 리포지토리에 변경 내용을 커밋해야 합니다.
디렉터리 이름 제한 사항
Git 리포지토리에 연결하는 디렉터리의 이름에는 다음과 같은 명명 제한이 있습니다.
- 디렉터리 이름은 공백이나 탭으로 시작하거나 끝낼 수 없습니다.
- 디렉터리 이름에는 다음 문자를 포함할 수 없습니다: "/:<>\*?|
항목 폴더(항목 파일이 포함된 폴더)에는 다음 문자를 포함할 수 없습니다: ":<>\*?|. 폴더 이름을 이러한 문자 중 하나가 포함된 항목으로 바꾸면 Git에서 작업 영역에 연결하거나 동기화할 수 없으며 오류가 발생합니다.
분화의 한계
- "Branch Out를 사용하려면 권한 테이블에 나열된 권한이 필요합니다."
- 이 작업에 사용할 수 있는 용량이 있어야 합니다.
- 모든 작업 영역 및 분기 명명 제한은 새 작업 영역으로 분기할 때 적용됩니다.
- 새 작업 영역에서는 Git 지원 항목만 사용할 수 있습니다.
- 관련 분기 목록에는 볼 수 있는 권한이 있는 분기 및 작업 영역만 표시됩니다.
- Git 통합을 사용하도록 설정해야 합니다.
- 분기할 때 새 분기가 만들어지고 원래 분기의 설정이 복사되지 않습니다. 설정 또는 정의를 조정하여 새 설정이 조직의 정책을 충족하는지 확인합니다.
- 기존 작업 영역으로 분기하는 경우:
- 대상 작업 영역은 Git 연결을 지원해야 합니다.
- 사용자는 대상 작업 영역의 관리자여야 합니다.
- 대상 작업 영역에는 용량이 있어야 합니다.
- 작업 영역에 템플릿 앱이 있을 수 없습니다.
- 작업 영역으로 분기하면 Git에 저장되지 않은 모든 항목이 손실됩니다. 분기하기 전에 유지하고 싶은 항목을 커밋하는 것을 권장합니다.
동기화 및 커밋 제한 사항
- 한 번에 한 방향으로만 동기화할 수 있습니다. 커밋 및 업데이트는 동시에 수행할 수 없습니다.
- 민감도 레이블이 지원되지 않으며 민감도 레이블이 있는 항목 내보내기가 사용하지 않도록 설정될 수 있습니다. 민감도 레이블이 있는 항목을 민감도 레이블 없이 커밋하려면 관리자에게 도움을 요청하세요.
- 제한된 항목에서 작동합니다. 폴더에서 지원되지 않는 항목은 무시됩니다.
- 중복 이름은 허용되지 않습니다. Power BI에서 이름 중복을 허용하더라도 업데이트, 커밋 또는 실행 취소 작업에 실패합니다.
- B2B는 지원되지 않습니다.
- 충돌 해결 은 Git에서 부분적으로 수행됩니다.
- Git에 커밋 프로세스 중에 Fabric 서비스는 항목 정의의 일부가 아닌 항목 폴더 내의 파일을 삭제합니다. 항목 폴더에 없는 관련 없는 파일은 삭제되지 않습니다.
- 변경 내용을 커밋한 후, 자신이 하지 않은 항목에 예상치 못한 변화가 있을 수 있습니다. 이러한 변경 내용은 의미상 중요하지 않으며 여러 가지 이유로 발생할 수 있습니다. 예:
- 항목 정의 파일을 수동으로 변경합니다. 이러한 변경 내용은 유효하지만 편집기를 통해 수행하는 경우와 다를 수 있습니다. 예를 들어 Git에서 의미 체계 모델 열의 이름을 바꾸고 이 변경 내용을 작업 영역으로 가져오는 경우 다음에 의미 체계 모델에 변경 내용을 커밋하면 bim 파일이 변경된 것으로 등록되고 수정된 열이
columns배열의 뒤로 푸시됩니다. 이는 bim 파일을 생성하는 AS 엔진이 이름이 바뀐 열을 배열의 끝으로 푸시하기 때문입니다. 이 변경 내용은 항목 작동 방식에 영향을 주지 않습니다. - CRLF 줄 바꿈을 사용하는 파일을 커밋하기. 이 서비스는 LF (라인 피드) 줄 바꿈을 사용합니다. CRLF 줄 바꿈이 있는 Git 리포지토리에 항목 파일이 있는 경우 서비스에서 커밋하면 이러한 파일이 LF로 변경됩니다. 예를 들어 데스크톱에서 보고서를 여는 경우 project 파일(.pbip)을 저장하고 CRLF 사용하여 Git에 업로드합니다.
- 항목 정의 파일을 수동으로 변경합니다. 이러한 변경 내용은 유효하지만 편집기를 통해 수행하는 경우와 다를 수 있습니다. 예를 들어 Git에서 의미 체계 모델 열의 이름을 바꾸고 이 변경 내용을 작업 영역으로 가져오는 경우 다음에 의미 체계 모델에 변경 내용을 커밋하면 bim 파일이 변경된 것으로 등록되고 수정된 열이
- 향상된 새로 고침 API를 사용하여 의미 체계 모델을 새로 고치면 새로 고칠 때마다 Git diff가 발생합니다.