Menyambungkan Azure DevOps Server ke GitHub (lokal)
Azure DevOps Server 2022 | Azure DevOps Server 2020 | Azure DevOps Server 2019
Saat Menyambungkan proyek Azure DevOps Server ke repositori GitHub, Anda mendukung penautan antara penerapan GitHub dan permintaan pull ke item kerja. Anda dapat menggunakan GitHub untuk pengembangan perangkat lunak saat menggunakan Azure Boards untuk merencanakan dan melacak pekerjaan Anda.
Catatan
Azure DevOps Server 2020 lokal mendukung integrasi dengan repositori GitHub.com dan GitHub Enterprise Server. Jika Anda ingin menyambungkan dari Azure DevOps Services, lihat Menyambungkan Azure Boards ke GitHub.
Saat Anda menyambungkan proyek Azure DevOps Server dengan repositori GitHub Enterprise Server, Anda mendukung penautan antara penerapan GitHub dan permintaan pull ke item kerja. Anda dapat menggunakan GitHub Enterprise untuk pengembangan perangkat lunak saat menggunakan Azure Boards untuk merencanakan dan melacak pekerjaan Anda.
Catatan
Azure DevOps Server 2019 lokal mendukung integrasi dengan repositori GitHub Enterprise Server. Jika Anda ingin menyambungkan dari Azure DevOps Services, lihat Menyambungkan Azure Boards ke GitHub.
Prasyarat
- Sambungkan ke repositori GitHub.com dengan menginstal Azure DevOps Server 2020.1.1 Patch 2. Tanpa patch ini, Anda hanya dapat terhubung ke repositori GitHub Enterprise Server Anda.
- Instal aplikasi Azure Boards untuk GitHub di organisasi atau akun GitHub.
- Menyambungkan ke proyek Azure Boards atau Azure DevOps. Jika Anda belum memiliki proyek, buat proyek.
- Anda harus menjadi anggota grup Administrator Koleksi Proyek dan grup Kontributor proyek. Jika Anda membuat proyek, maka Anda memiliki izin.
- Anda harus menjadi administrator GitHub Enterprise Server yang Anda sambungkan.
Opsi autentikasi
Opsi autentikasi berikut ini didukung.
Catatan
OAuth tidak didukung untuk Azure DevOps Server 2020.
Mendaftarkan Azure DevOps di GitHub sebagai Aplikasi OAuth
Jika Anda berencana menggunakan OAuth untuk menyambungkan Azure DevOps Server dengan GitHub Enterprise Server, Anda harus terlebih dahulu mendaftarkan aplikasi sebagai Aplikasi OAuth. Untuk informasi selengkapnya, lihat Membuat Aplikasi OAuth.
Mendaftarkan Azure DevOps Server
Masuk ke portal web untuk server GitHub Enterprise Anda.
Pilih Pengaturan>Pengaturan>Pengembang Aplikasi Oauth Aplikasi>OAuth Baru.
Masukkan informasi Anda untuk mendaftarkan aplikasi Azure DevOps Server Anda.
Untuk URL Beranda, tentukan URL Publik koleksi proyek Anda. Anda dapat menemukan URL ini saat membuka Konsol Administrasi Azure DevOps dan melihat simpul Tingkat Aplikasi.
Untuk URL panggilan balik Otorisasi, gunakan pola berikut untuk membuat URL.
{Azure DevOps Server Public Url}/{Collection Name}/_admin/oauth2/callback
Contohnya:
http://contoso/DefaultCollection/_admin/oauth2/callback
https://tfs.contoso.com/MyCollection/_admin/oauth2/callback
Pilih Daftar aplikasi.
Halaman muncul yang menyediakan ID Klien dan Rahasia Klien untuk aplikasi OAuth terdaftar Anda.
Mendaftarkan konfigurasi OAuth Anda di Azure DevOps Server
Masuk ke portal web untuk Azure DevOps Server Anda.
Tambahkan konfigurasi GitHub Enterprise Oauth ke koleksi Azure DevOps Server Anda.
Pilih Pengaturan>admin konfigurasi>Oauth Tambahkan konfigurasi Oauth.
Masukkan informasi Anda, lalu pilih Buat.
Menyambungkan Azure DevOps Server ke GitHub Enterprise Server
Anda dapat menyambungkan hingga 250 repositori GitHub ke proyek Azure Boards.
Catatan
Koneksi ke lebih dari 100 repositori GitHub memerlukan pembaruan Azure DevOps Server 2020.1 atau versi yang lebih baru.
Koneksi ke repositori GitHub.com memerlukan Azure DevOps Server 2020.1.1 Patch 2 atau versi yang lebih baru.
Anda dapat menyambungkan hingga 100 repositori GitHub ke proyek Azure Boards. Batas ini tidak dapat diubah.
Buka portal web untuk Azure DevOps Server Anda.
Pilih logo Azure DevOps untuk membuka Proyek, lalu pilih proyek Azure Boards yang ingin Anda konfigurasi untuk menyambungkan ke repositori GitHub Enterprise Anda.
Pilih Pengaturan proyek>Koneksi GitHub.
Jika ini pertama kalinya membuat koneksi dari proyek, pilih metode autentikasi yang ingin Anda gunakan untuk membuat koneksi:
- Token Akses Pribadi, untuk detailnya lihat Menyambungkan menggunakan Token Akses Pribadi.
- Nama Pengguna dan Kata Sandi, lihat Menyambungkan menggunakan Nama Pengguna dan Kata Sandi.
Jika tidak, pilih Koneksi baru, dan pilih metode autentikasi Anda dari dialog Koneksi Baru.
Pilih Pengaturan>proyek Koneksi>GitHub Sambungkan akun GitHub Enterprise Anda.
Atau, pilih token akses pribadi atau nama pengguna dan kata sandi, jika Anda menggunakan kredensial tersebut.
Menyambungkan dengan OAuth
Pilih konfigurasi yang Anda siapkan di Langkah 4 dari Daftarkan konfigurasi OAuth Anda di Azure DevOps Server. Lalu, pilih Sambungkan.
Menyambungkan dengan Token Akses Pribadi
Untuk membuat PAT, lihat Membuat token akses pribadi.
Tip
Saat Anda membuat GitHub PAT, pastikan Anda menyertakan cakupan ini:
repo, admin:repo_hook, read:user, user:email
.Masukkan URL untuk server GitHub Enterprise Anda dan kredensial token akses pribadi yang dikenali oleh server tersebut. Lalu pilih Sambungkan.
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.
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.
Untuk menyambungkan ke akun gitHub atau organisasi dari Azure Boards untuk pertama kalinya, Anda juga menginstal aplikasi Azure Boards untuk GitHub. Selesaikan integrasi dengan mengikuti prosedur yang diuraikan dalam Mengonfirmasi koneksi.
Mengatasi masalah koneksi
Integrasi Azure Boards-GitHub bergantung pada berbagai protokol autentikasi untuk mendukung koneksi. Perubahan pada cakupan izin pengguna atau kredensial autentikasi dapat menyebabkan pencabutan repositori GitHub yang terhubung ke Azure Boards.
Untuk gambaran umum integrasi yang didukung aplikasi Azure Boards untuk GitHub, lihat Integrasi Azure Boards-GitHub.
Opsi autentikasi yang didukung
Opsi autentikasi berikut didukung berdasarkan platform GitHub yang ingin 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.
Mengatasi masalah akses
Ketika koneksi Azure Boards ke GitHub tidak lagi memiliki akses, itu menunjukkan status pemberitahuan di antarmuka pengguna dengan red-X. Arahkan mouse ke atas pemberitahuan dan menunjukkan bahwa kredensial tidak lagi valid. Untuk memperbaiki masalah, hapus koneksi dan buat ulang koneksi baru.
Ketika koneksi Azure Boards ke GitHub tidak lagi memiliki akses, itu menunjukkan status pemberitahuan di antarmuka pengguna dengan red-X yang memiliki tipsalat seperti, Tidak dapat terhubung ke GitHub.
Pertimbangkan resolusi 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 telah dicabut atau cakupan izin yang diperlukan berubah dan tidak mencukupi.
Pengguna mungkin kehilangan 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
.
Memperbarui definisi XML untuk memilih jenis item kerja
Jika organisasi Anda menggunakan xml yang dihosting atau model proses XML lokal untuk menyesuaikan pengalaman pelacakan kerja, dan Anda ingin menautkan ke dan menampilkan jenis tautan GitHub dari bagian Pengembangan dalam formulir item kerja, Anda harus memperbarui definisi XML untuk jenis item kerja.
Misalnya, jika Anda ingin menautkan cerita pengguna dan bug ke GitHub menerapkan dan menarik permintaan dari bagian Pengembangan , Anda perlu memperbarui 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 berikut untuk mendukung jenis tautan eksternal: GitHub Commit dan GitHub Pull Request.
<ExternalLinkFilter Type="GitHub Pull Request" />
<ExternalLinkFilter Type="GitHub Commit" />
Saat diperbarui, 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>