Bagikan melalui


Menyambungkan Azure Boards ke GitHub (cloud)

Azure DevOps

Gunakan repositori GitHub.com untuk pengembangan perangkat lunak dan proyek Azure Boards Anda untuk merencanakan dan melacak pekerjaan Anda. Sambungkan proyek dan repositori Anda sehingga GitHub Anda menerapkan dan menarik permintaan ditautkan ke item kerja Anda di Azure Boards.

Catatan

Azure Boards dan Azure DevOps Services mendukung integrasi dengan repositori GitHub.com dan GitHub Enterprise Server. Jika Anda ingin menyambungkan dari Azure DevOps Server lokal, lihat Menyambungkan Azure DevOps Server ke GitHub Enterprise Server.

Prasyarat

  • Persyaratan proyek: Memiliki proyek Azure DevOps. Jika Anda tidak memiliki proyek, buat proyek.

  • Izin:

    • Jadilah anggota grup Administrator Proyek. Jika Anda membuat proyek, Anda memiliki izin.
    • Jadilah administrator atau pemilik repositori GitHub untuk disambungkan. Anda dapat terhubung ke beberapa repositori GitHub selama Anda adalah administrator untuk repositori tersebut.

Opsi autentikasi

Opsi autentikasi berikut didukung berdasarkan platform GitHub yang ingin Anda sambungkan.

GitHub.com

GitHub Enterprise Server

Catatan

Jika Anda memilih untuk menghubungkan GitHub dengan PAT, konfigurasikan akses menyeluruh (SSO) untuk PAT di akun GitHub Anda. Konfigurasi ini diperlukan untuk mengambil daftar repositori dari organisasi dengan autentikasi SSO Security Assertion Markup Language (SAML) diaktifkan.

Sambungkan Azure Boards ke repositori GitHub.

  1. Masuk ke proyek Anda (https://dev.azure.com/{Your_Organization/Your_Project}).

  2. Pilih Pengaturan proyek>Koneksi GitHub.

    Cuplikan layar koneksi GitHub Pengaturan>Proyek yang terbuka.

  3. Jika ini adalah pertama kalinya Anda menyambungkan dari proyek, pilih Sambungkan akun GitHub Anda untuk menggunakan kredensial akun GitHub Anda.

    Cuplikan layar pertama kali menyambungkan dengan kredensial GitHub.

    Jika tidak, pilih Koneksi baru, dan pilih metode autentikasi Anda dari dialog Koneksi Baru.

    Saat Anda terhubung dengan akun GitHub Anda, gunakan kredensial GitHub Anda untuk mengautentikasi. Untuk menggunakan PAT, lihat Menambahkan koneksi GitHub menggunakan PAT. Untuk menyambungkan ke GitHub Enterprise Server, lihat Mendaftarkan Azure DevOps di GitHub sebagai Aplikasi OAuth.

Menambahkan koneksi GitHub dengan kredensial GitHub

Anda dapat menyambungkan hingga 500 repositori GitHub ke proyek Azure Boards.

  1. Jika ini adalah pertama kalinya Anda menyambungkan ke GitHub dari Azure Boards, masuk menggunakan kredensial GitHub Anda. Pilih akun di mana Anda adalah administrator repositori.

  2. Pilih akun GitHub atau organisasi yang ingin Anda sambungkan. Hanya organisasi yang Anda miliki atau administrator yang terdaftar.

    Jika semua repositori untuk organisasi sudah tersambung ke Azure Boards, Anda akan melihat pesan berikut:

    Cuplikan layar pesan di mana tidak ada lagi repositori untuk terhubung.

  3. Masukkan kredensial GitHub Anda. Jika Anda mengaktifkan autentikasi dua faktor, masukkan kode autentikasi yang dikirim oleh GitHub dan pilih Verifikasi. Jika tidak, sistem akan secara otomatis mengenali organisasi GitHub Anda karena akun GitHub Anda dikaitkan dengan akun Azure DevOps Services Anda.

Menambahkan repositori GitHub

Setelah diautentikasi, Anda dapat memilih repositori yang ingin Anda sambungkan.

  1. Dialog Tambahkan Repositori GitHub secara otomatis ditampilkan dan memilih semua repositori GitHub.com tempat Anda menjadi administrator di organisasi yang dipilih. Batal pilih repositori apa pun yang tidak ingin Anda sertakan dalam integrasi.

    Cuplikan layar memperlihatkan repositori GitHub.

    Tip

    Untuk menghindari penautan AB# yang tidak terduga, sebaiknya sambungkan repositori GitHub ke proyek dalam satu organisasi Azure DevOps. Menyambungkan repositori GitHub yang sama ke proyek di beberapa organisasi Azure DevOps dapat menyebabkan masalah. Untuk informasi selengkapnya, lihat Memecahkan masalah integrasi GitHub & Azure Boards.

    Jika semua repositori sudah tersambung ke organisasi saat ini atau lainnya, pesan berikut akan ditampilkan:

    Cuplikan layar pesan di mana tidak ada lagi repositori untuk terhubung.

  2. Setelah membuat pilihan Anda, pilih Simpan.

Mengonfirmasi koneksi

  1. Tinjau halaman GitHub yang ditampilkan lalu pilih Setujui, Instal, & Otorisasi.

    Cuplikan layar memperlihatkan konfirmasi repositori GitHub.

  2. Berikan kata sandi GitHub Anda untuk mengonfirmasi.

  3. Setelah selesai, Anda akan melihat koneksi baru dengan repositori yang dipilih tercantum.

Cuplikan layar daftar repositori yang terhubung.

Untuk mengubah konfigurasi atau mengelola aplikasi Azure Boards untuk GitHub, lihat Mengubah akses repositori ke Azure Boards.

Menambahkan koneksi GitHub menggunakan PAT

Sebaiknya gunakan kredensial akun GitHub Anda untuk terhubung ke repositori GitHub Anda. Jika Anda perlu menggunakan PAT, lakukan langkah-langkah berikut.

Tip

Saat Anda membuat GitHub PAT, pastikan Anda menyertakan cakupan ini: repo, read:user, user:email, admin:repo_hook.

  1. Pilih Token Akses Pribadi.

    Cuplikan layar dialog koneksi GitHub Baru, memilih Token Akses Pribadi.

    Untuk membuat PAT GitHub, buka Token akses Pribadi Pengaturan > Pengembang GitHub.

  2. Masukkan PAT dan pilih Sambungkan.

    Cuplikan layar memperlihatkan PAT yang dimasukkan.

  3. Pilih repositori yang ingin Anda sambungkan ke proyek dengan mengikuti prosedur yang diuraikan dalam Pilih repositori sebelumnya di artikel ini.

  4. Jika ini pertama kalinya menyambungkan ke akun GitHub atau organisasi dari Azure Boards, instal aplikasi Azure Boards untuk GitHub. Konfirmasikan koneksi sebelumnya di artikel ini.

Mendaftarkan Azure DevOps di GitHub sebagai Aplikasi OAuth

Untuk menggunakan OAuth untuk menyambungkan Azure DevOps dengan GitHub Enterprise Server Anda, pertama-tama daftarkan aplikasi sebagai Aplikasi OAuth. Untuk informasi selengkapnya, lihat Membuat Aplikasi OAuth.

Mendaftarkan Layanan Azure DevOps

  1. Masuk ke portal web untuk server GitHub Enterprise Anda.

    Cuplikan layar masuk untuk server GitHub Enterprise.

  2. Buka Pengaturan>Pengaturan Aplikasi>Oauth Aplikasi>OAuth Baru.

    Cuplikan layar memperlihatkan urutan untuk Aplikasi OAuth Baru.

  3. Masukkan informasi pendaftaran.

    Untuk URL Beranda, tentukan URL Organisasi organisasi Anda.
    Untuk URL panggilan balik Otorisasi, gunakan pola berikut untuk membuat URL.

    {Azure DevOps Services Organization URL}/_admin/oauth2/callback

    Contohnya:

    https://dev.azure.com/fabrikam/_admin/oauth2/callback

    Cuplikan layar memperlihatkan aplikasi untuk mendaftar.

  4. Pilih Daftar aplikasi.

  5. ID Klien dan Rahasia Klien untuk aplikasi OAuth terdaftar Anda muncul.

    Cuplikan layar ID Klien dan Rahasia Klien untuk aplikasi OAuth terdaftar.

Mendaftarkan konfigurasi OAuth Anda di Azure DevOps Services

  1. Masuk ke portal web untuk Layanan Azure DevOps.

  2. Tambahkan konfigurasi GitHub Enterprise Oauth ke organisasi Anda.

  3. Di Pengaturan organisasi, pilih Konfigurasi>Oauth Tambahkan konfigurasi Oauth.

    Cuplikan layar Pengaturan Organisasi Terbuka, konfigurasi OAuth.

  4. Masukkan informasi Anda, lalu pilih Buat.

    Dialog konfigurasi OAuth.

Menyambungkan Layanan Azure DevOps ke GitHub Enterprise Server

Penting

Untuk menyambungkan Layanan Azure DevOps ke GitHub Enterprise Server Anda, pastikan GitHub Enterprise Server Anda dapat diakses dari Internet. Verifikasi bahwa Azure DNS dapat mengatasi nama GitHub Enterprise Server Anda dan firewall Anda mengizinkan akses dari alamat IP Azure Data Center. Untuk menentukan rentang alamat IP, lihat Rentang IP Pusat Data Microsoft Azure. Pesan kesalahan umum untuk masalah konektivitas adalah:

Nama jarak jauh tidak dapat diselesaikan: 'github-enterprise-server.contoso.com'

Jika Anda mengalami kesalahan ini, periksa aksesibilitas server Anda. Untuk informasi selengkapnya, lihat Tanya Jawab Umum Azure DNS.

  1. Pilih Pengaturan proyek>Koneksi>GitHub GitHub Enterprise Server untuk koneksi pertama kali.

    Koneksi pertama, pilih GitHub Enterprise Server.

    Atau, dari dialog koneksi GitHub Baru, pilih GitHub Enterprise Server.

    Cuplikan layar dialog koneksi GitHub Baru, pilih GitHub Enterprise Server.

  2. Pilih metode autentikasi.

    Cuplikan layar memperlihatkan dialog metode autentikasi.

    Menyambungkan dengan OAuth

    Pilih konfigurasi yang Anda siapkan di Langkah 4 dari Daftarkan konfigurasi OAuth Anda di Layanan Azure DevOps, lalu pilih Sambungkan.

    Cuplikan layar koneksi GitHub Enterprise Baru, dialog koneksi OAuth.

    Menyambungkan dengan Token Akses Pribadi

    Masukkan URL untuk server GitHub Enterprise Anda dan kredensial token akses pribadi yang dikenali oleh server tersebut. Lalu pilih Sambungkan.

    Cuplikan layar koneksi GitHub Enterprise Baru, dialog Koneksi token akses pribadi.

    Menyambungkan dengan Nama Pengguna dan Kata Sandi

    Masukkan URL untuk server GitHub Enterprise Anda dan info masuk akun administrator yang dikenali oleh server tersebut, lalu pilih Sambungkan.

    Cuplikan layar koneksi GitHub Enterprise Baru, dialog koneksi Nama Pengguna.

  3. Dialog mencantumkan semua repositori tempat Anda memiliki hak administrasi GitHub. Anda dapat beralih antara Tambang dan Semua untuk menentukan apakah orang lain muncul, lalu memeriksa yang ingin Anda tambahkan. Pilih Simpan saat Anda selesai.

    Cuplikan layar repositori yang tercantum.

    Tip

    Anda hanya dapat membuat koneksi ke repositori yang ditentukan di bawah satu organisasi GitHub. Untuk menyambungkan proyek ke repositori lain yang ditentukan di organisasi GitHub lain, Anda harus menambahkan koneksi lain.

  4. Jika ini pertama kalinya Anda menyambungkan ke akun gitHub atau organisasi dari Azure Boards, Anda juga menginstal aplikasi Azure Boards untuk GitHub. Konfirmasikan koneksi sebelumnya di artikel ini.

Mengatasi masalah koneksi

Integrasi Azure Boards-GitHub menggunakan berbagai protokol autentikasi untuk mempertahankan koneksi. Perubahan pada cakupan izin pengguna atau kredensial autentikasi dapat mencabut repositori GitHub yang terhubung ke Azure Boards.

Untuk gambaran umum integrasi yang didukung oleh aplikasi Azure Boards untuk GitHub, lihat Integrasi Azure Boards-GitHub.

Opsi autentikasi yang didukung

Opsi autentikasi yang didukung berikut bergantung pada platform GitHub yang Anda sambungkan:

Platform

GitHub.com

GitHub Enterprise Server

Azure DevOps

  • GitHub.com akun pengguna
  • Token akses pribadi (PAT)
  • OAuth
  • PAT
  • Nama pengguna ditambah kata sandi

Azure DevOps Server 2020

Tidak berlaku

  • PAT
  • Nama pengguna ditambah kata sandi

Azure DevOps Server 2019

Tidak berlaku

  • OAuth
  • PAT
  • Nama pengguna ditambah kata sandi

Catatan

Dengan aplikasi Azure Boards untuk GitHub, Azure Boards, dan Azure DevOps Services terintegrasi dengan repositori GitHub.com dan GitHub Enterprise Server. Azure DevOps Server 2019 dan versi yang lebih baru hanya mendukung integrasi dengan repositori GitHub Enterprise Server. Integrasi dengan repositori Git lainnya tidak didukung.

Memberikan akses organisasi Azure Boards

Jika integrasi antara Azure Boards dan GitHub tidak berfungsi seperti yang diharapkan, verifikasi bahwa Anda memberikan akses organisasi.

  1. Dari portal web GitHub, buka Pengaturan dari menu profil Anda.
    Cuplikan layar profil terbuka, pilih Pengaturan.

  2. Pilih Aplikasi di bawah Integrasi>OAuth Apps>Resmi Azure Boards.

  3. Di bawah Akses organisasi, atasi masalah apa pun yang mungkin muncul. Pilih Berikan untuk memberikan akses ke organisasi apa pun yang menunjukkan permintaan Access tertunda.

    Cuplikan layar akses Organisasi dengan organisasi tanpa akses.

Mengatasi masalah akses

Saat koneksi Azure Boards ke GitHub kehilangan akses, status pemberitahuan dengan red-X muncul di antarmuka pengguna. Arahkan mouse ke atas pemberitahuan untuk melihat bahwa kredensial tidak lagi valid. Untuk memperbaiki masalah ini, hapus koneksi dan buat yang baru.

Cuplikan layar koneksi yang gagal.

Untuk mengatasi masalah ini, pertimbangkan item berikut:

  • Jika koneksi menggunakan OAuth:

    • Aplikasi Azure Boards memiliki aksesnya ditolak untuk salah satu repositori.

    • GitHub mungkin tidak tersedia/tidak dapat dijangkau. Ketidaktersebaran ini bisa disebabkan oleh pemadaman baik di layanan atau masalah infrastruktur/jaringan lokal. Anda dapat memeriksa status layanan dari tautan berikut:

      Hapus dan buat ulang koneksi ke repositori GitHub. Koneksi yang dibuat ulang ini menyebabkan GitHub meminta untuk mengotorisasi ulang Azure Boards.

  • Jika koneksi menggunakan PAT:

    • PAT mungkin dicabut atau cakupan izin yang diperlukan berubah dan tidak mencukupi.

    • Pengguna mungkin tidak memiliki izin admin pada repositori GitHub.

      Buat ulang PAT dan pastikan cakupan untuk token menyertakan izin yang diperlukan: repo, read:user, user:email, admin:repo_hook.

Mengatasi koneksi GitHub Enterprise Server yang rusak

Jika Anda bermigrasi dari Azure DevOps Server ke Azure DevOps Services dengan koneksi GitHub Enterprise Server yang ada, koneksi Anda yang ada mungkin tidak berfungsi seperti yang diharapkan. Item kerja menyebutkan dalam GitHub mungkin tertunda atau tidak pernah muncul di Azure DevOps Services karena URL panggilan balik yang terkait dengan GitHub tidak lagi valid. Pertimbangkan resolusi berikut:

  • Hapus dan buat ulang koneksi: Hapus dan buat ulang koneksi ke repositori GitHub Enterprise Server. Ikuti urutan langkah-langkah yang disediakan dalam dokumentasi Sambungkan dari Azure Boards .

  • Perbaiki URL webhook: Buka halaman pengaturan repositori GitHub dan edit URL webhook, yang menunjuk ke URL organisasi Azure DevOps yang dimigrasikan: https://dev.azure.com/{OrganizationName}/_apis/work/events?api-version=5.2-preview

Menyambungkan ke beberapa organisasi Azure DevOps

Menghubungkan repositori GitHub Anda ke proyek di beberapa organisasi Azure DevOps, seperti dev.azure.com/Contoso dan dev.azure.com/Fabrikam, dapat menyebabkan hasil yang tidak terduga dengan penyebutan AB# . ID item kerja tidak unik di seluruh organisasi Azure DevOps, sehingga AB#12 dapat merujuk ke item kerja di Contoso atau Fabrikam. Saat item kerja disebutkan dalam pesan penerapan atau permintaan pull, kedua organisasi mungkin mencoba menautkan ke item kerja dengan ID yang cocok, menyebabkan kebingungan.

Untuk menghindari masalah ini, sambungkan satu repositori GitHub hanya ke satu organisasi Azure DevOps.

Catatan

Saat Anda tersambung menggunakan aplikasi Azure Boards untuk GitHub, aplikasi mencegah koneksi ke beberapa organisasi. Jika repositori GitHub terhubung ke organisasi Azure DevOps yang salah, hubungi pemilik organisasi tersebut untuk menghapus koneksi sebelum menambahkan repositori ke organisasi Azure DevOps yang benar.

Memperbarui definisi XML untuk memilih jenis item kerja

Perbarui definisi XML untuk jenis item kerja jika organisasi Anda menggunakan model proses XML yang Dihosting atau XML lokal untuk menyesuaikan pengalaman pelacakan kerja dan menautkan ke dan menampilkan jenis tautan GitHub dari bagian Pengembangan dalam formulir item kerja.

Misalnya, untuk menautkan cerita pengguna dan bug ke GitHub menerapkan dan menarik permintaan dari bagian Pengembangan , perbarui definisi XML untuk cerita pengguna dan bug.

Ikuti urutan tugas yang disediakan dalam model proses XML yang dihosting untuk memperbarui definisi XML. Untuk setiap jenis item kerja, temukan Group Label="Development" bagian , dan tambahkan dua baris berikut dalam sintaks kode untuk mendukung jenis tautan eksternal: GitHub Commit dan GitHub Pull Request.

             <ExternalLinkFilter Type="GitHub Pull Request" />  
             <ExternalLinkFilter Type="GitHub Commit" />  

Setelah memperbarui, bagian akan muncul sebagai berikut.

<Group Label="Development">  
   <Control Type="LinksControl" Name="Development">  
      <LinksControlOptions ViewMode="Dynamic" ZeroDataExperience="Development" ShowCallToAction="true">  
         <ListViewOptions GroupLinks="false">   
         </ListViewOptions>  
         <LinkFilters>  
             <ExternalLinkFilter Type="Build" />  
             <ExternalLinkFilter Type="Integrated in build" />  
             <ExternalLinkFilter Type="Pull Request" />  
             <ExternalLinkFilter Type="Branch" />  
             <ExternalLinkFilter Type="Fixed in Commit" />  
             <ExternalLinkFilter Type="Fixed in Changeset" />  
             <ExternalLinkFilter Type="Source Code File" />  
             <ExternalLinkFilter Type="Found in build" />  
             <ExternalLinkFilter Type="GitHub Pull Request" />  
             <ExternalLinkFilter Type="GitHub Commit" />  
         </LinkFilters>  
      </LinksControlOptions>  
   </Control>  
</Group>  

Tanya Jawab Umum

T: Beberapa pengguna saya di Azure DevOps memiliki identitas GitHub. Apakah saya perlu menambahkannya sebagai pengguna GitHub baru ke organisasi saya?

J: Tidak. Minta pengguna Anda untuk keluar lalu masuk kembali ke organisasi dengan kredensial GitHub mereka dari sesi browser baru. Tindakan ini akan menetapkan identitas GitHub mereka.

T: Saya adalah Administrator organisasi dan saya mengaktifkan kebijakan untuk mengundang pengguna GitHub. Mengapa saya tidak dapat mengundang pengguna GitHub baru?

J: Setelah mengubah pengaturan, keluar dari Azure DevOps lalu masuk kembali ke organisasi (dev.azure.com/{organizationName} atau organizationName.visualstudio.com) dengan kredensial GitHub Anda dari sesi browser baru.

T: Saya masuk dengan kredensial GitHub saya, tetapi mengapa saya tidak dapat mengundang pengguna GitHub?

A: Hanya Administrator organisasi atau proyek yang dapat mengundang pengguna baru untuk bergabung dengan organisasi. Anda mungkin tidak memiliki izin yang diperlukan untuk menambahkan pengguna baru. Bekerja sama dengan administrator Anda untuk mendapatkan izin yang diperlukan atau minta mereka menambahkan pengguna untuk Anda.

Langkah berikutnya