Konsep dasar dalam integrasi Git

Artikel ini menjelaskan konsep Git dasar dan proses mengintegrasikan Git dengan ruang kerja Microsoft Fabric Anda.

Penting

Fitur ini dalam pratinjau.

Izin

Izin Azure DevOps

Daftar berikut menunjukkan apa yang dapat dilakukan peran ruang kerja yang berbeda tergantung pada izin Azure DevOps mereka:

  • Admin: Dapat melakukan operasi apa pun di ruang kerja, hanya dibatasi oleh peran Azure DevOps mereka.
  • Anggota/Kontributor: Setelah tersambung ke ruang kerja, anggota/kontributor dapat menerapkan dan memperbarui perubahan, tergantung pada peran Azure DevOps mereka. Untuk tindakan yang terkait dengan koneksi ruang kerja (misalnya, menyambungkan, memutuskan sambungan, atau beralih cabang) cari bantuan dari Admin.
  • Penampil: Tidak dapat melakukan tindakan apa pun. Penampil tidak dapat melihat informasi terkait Git apa pun di ruang kerja.

Izin yang diperlukan untuk operasi umum

Tabel berikut ini menjelaskan izin yang diperlukan untuk melakukan berbagai operasi umum:

Operasi Peran ruang kerja Izin Git
Koneksi ruang kerja ke repositori Git Admin Baca=Izinkan
Menyinkronkan ruang kerja dengan repositori Git Admin Baca=Izinkan
Memutuskan sambungan ruang kerja dari repositori Git Admin Tidak ada izin yang diperlukan
Beralih cabang di ruang kerja (atau perubahan pengaturan koneksi) Admin Baca=Izinkan (dalam repo/direktori/cabang target)
Lihat detail koneksi Git Admin, Anggota, Kontributor Baca atau Tidak Ada
Lihat ruang kerja 'Status Git' Admin, Anggota, Kontributor Baca=Izinkan
Pembaruan dari Git Semua hal berikut:

Kontributor di ruang kerja (izin TULIS pada semua item)

Pemilik item (jika sakelar penyewa memblokir pembaruan untuk non-pemilik)

BUILD pada dependensi eksternal (jika berlaku)
Baca=Izinkan
Menerapkan perubahan ruang kerja ke Git Semua hal berikut:

Kontributor di ruang kerja (izin TULIS pada semua item)

Pemilik item (jika sakelar penyewa memblokir pembaruan untuk non-pemilik)

BUILD pada dependensi eksternal (jika berlaku)
Baca=Izinkan
Kontribusi=Izinkan
kebijakan cabang harus mengizinkan penerapan langsung
Membuat cabang Git baru dari dalam Fabric Admin Peran=Tulis
Buat cabang=Izinkan

Koneksi dan sinkronisasi

Hanya admin ruang kerja yang dapat menyambungkan ruang kerja ke Azure Repos, tetapi setelah tersambung, siapa pun yang memiliki izin dapat bekerja di ruang kerja. Jika Anda bukan admin, mintalah bantuan admin untuk menyambungkan.

Saat Anda menyambungkan ruang kerja ke Git, Fabric menyinkronkan antara dua lokasi sehingga mereka memiliki konten yang sama. Selama sinkronisasi awal ini, jika ruang kerja atau cabang Git kosong sementara yang lain memiliki konten, konten disalin dari lokasi yang tidak ada ke lokasi kosong. Jika ruang kerja dan cabang Git memiliki konten, Anda harus memutuskan arah mana yang harus dilalui sinkronisasi.

  • Jika Anda menerapkan ruang kerja Anda ke cabang Git, semua konten ruang kerja yang didukung diekspor ke Git dan menimpa konten Git saat ini.
  • Jika Anda memperbarui ruang kerja dengan konten Git, konten ruang kerja ditimpa, dan Anda kehilangan konten ruang kerja Anda. Karena cabang Git selalu dapat dipulihkan ke tahap sebelumnya sementara ruang kerja tidak dapat, jika Anda memilih opsi ini, Anda diminta untuk mengonfirmasi.

Screenshot of dialog asking which direction to sync if both Git and the workspace have content.

Jika Anda tidak memilih konten mana yang akan disinkronkan, Anda tidak dapat terus bekerja hingga Anda melakukannya:

Screenshot notification that you can't continue working until workspace is synced.

Status git

Setelah Anda tersambung, ruang kerja menampilkan kolom status Git yang menunjukkan status sinkronisasi setiap item di ruang kerja sehubungan dengan item di cabang jarak jauh.

Screenshot if items in a workspace with their Git status outlined.

Setiap item memiliki salah satu status berikut:

  • Disinkronkan (item sama di ruang kerja dan cabang Git)
  • Konflik (item diubah di ruang kerja dan cabang Git)
  • Item yang tidak didukung
  • Perubahan yang tidak dikomit di ruang kerja
  • Pembaruan diperlukan dari Git
  • Item identik di kedua tempat tetapi perlu diperbarui ke penerapan terakhir

Informasi sinkronisasi

Selama Anda tersambung, informasi berikut muncul di bagian bawah layar Anda:

  • cabang Koneksi
  • Waktu sinkronisasi terakhir
  • Tautan ke penerapan terakhir tempat ruang kerja disinkronkan

Screenshot of sync information that appears on the bottom of the screen when connected to Git.

Penerapan dan pembaruan

Panel kontrol sumber

Di atas layar ada ikon Kontrol sumber. Ini menunjukkan jumlah item yang berbeda di ruang kerja dan cabang Git. Saat ruang kerja disinkronkan dengan cabang Git, ikon Kontrol sumber menampilkan 0.

Screenshot of the source control icon showing zero items changed.

Ketika perubahan dilakukan baik ke ruang kerja atau cabang Git, ikon kontrol sumber menunjukkan jumlah item yang berbeda. Pilih ikon kontrol sumber untuk membuka panel Kontrol sumber.

Di panel Kontrol sumber, tab Perubahan memperlihatkan jumlah item yang diubah di ruang kerja dan perlu diterapkan ke Git, dan tab Pembaruan memperlihatkan jumlah item yang dimodifikasi di cabang Git dan perlu diperbarui ke ruang kerja.

Di setiap tab, item yang diubah dicantumkan dengan ikon yang menunjukkan status:

  • Baru
  • dimodifikasi
  • Dihapus
  • Konflik

Screenshot of the source control panel showing the status of the changed items.

Menjalankan

  • Saat ada lebih dari satu item yang akan diterapkan, Anda dapat memilih item mana yang akan diterapkan ke cabang Git.
  • Jika ada pembaruan yang dilakukan pada cabang Git, penerapan dinonaktifkan hingga Anda memperbarui ruang kerja Anda.

Update

  • Tidak seperti penerapan dan batalkan, perintah Perbarui selalu memperbarui seluruh cabang dan menyinkronkan ke penerapan terbaru. Anda tidak dapat memilih item tertentu untuk diperbarui.
  • Jika perubahan dilakukan di ruang kerja dan di cabang Git pada item yang sama, pembaruan dinonaktifkan hingga konflik diselesaikan.

Baca selengkapnya tentang cara menerapkan dan memperbarui. Baca selengkapnya tentang proses pembaruan dan cara mengatasi konflik.

Pertimbangan dan batasan

Batasan umum

  • Akun Azure DevOps harus didaftarkan ke pengguna yang sama yang menggunakan ruang kerja Fabric.
  • Metode autentikasi di Power BI harus setidaknya sekuat metode autentikasi untuk Azure DevOps. Misalnya, jika Azure DevOps memerlukan autentikasi multifaktor, Power BI juga perlu memerlukan autentikasi multifaktor.
  • Kueri Langsung dan model komposit pada Himpunan Data Power BI dan Analysis Services saat ini tidak didukung.
  • Model semantik DirectLake saat ini tidak didukung.
  • Merefresh model semantik menggunakan API refresh yang ditingkatkan menyebabkan git berbeda setelah setiap refresh.

Batasan ruang kerja

Hanya admin ruang kerja yang dapat mengelola koneksi ke Azure Repo seperti menyambungkan, memutuskan sambungan, atau menambahkan cabang. Setelah tersambung, siapa pun dengan izin dapat bekerja di ruang kerja.

Batasan cabang dan folder

  • Panjang maksimum nama cabang adalah 244 karakter.

  • Panjang maksimum jalur lengkap untuk nama file adalah 250 karakter. Nama yang lebih panjang gagal.

  • Ukuran file maksimum adalah 25 MB.

  • Anda tidak dapat mengunduh laporan/himpunan data sebagai .pbix dari layanan setelah menyebarkannya dengan integrasi Git.

  • Jika nama tampilan item:

    • Memiliki lebih dari 256 karakter
    • Diakhir dengan .' atau spasi
    • Berisi salah satu karakter berikut: ", , /, :, <, >\\, *, , ?,|

    ID logis (Guid) ditambahkan sebagai awalan sebelum jenis, saat menamai folder di Git.

Batasan sinkronisasi dan penerapan

  • Batas ukuran untuk penerapan adalah 125 MB.
  • Anda hanya dapat menyinkronkan satu arah pada satu waktu. Anda tidak dapat menerapkan dan memperbarui secara bersamaan.
  • Label sensitivitas tidak didukung dan mengekspor item dengan label sensitivitas mungkin dinonaktifkan. Untuk menerapkan item yang memiliki label sensitivitas tanpa label sensitivitas, mintalah bantuan administrator Anda.
  • Bekerja dengan item terbatas. Jika item yang tidak didukung ada di folder, item akan diabaikan.
  • Nama duplikat tidak diizinkan – meskipun Power BI mengizinkannya, tindakan pembaruan, penerapan, atau pembatalan gagal.
  • B2B tidak didukung.
  • Resolusi konflik sebagian dilakukan di Git.