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
-
Integrasi dengan GitHub:
- 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.
- Koneksi proyek: Menyambungkan ke proyek Azure Boards atau Azure DevOps. Jika Anda belum memiliki proyek, buat proyek.
-
Izin:
- Jadilah anggota grup Administrator Koleksi Proyek dan grup Kontributor proyek. Jika Anda membuat proyek, maka Anda memiliki izin.
- Jadilah 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>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 >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.
- kredensial GitHub, lihat Connect menggunakan kredensial GitHub.
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 dari opsi autentikasi lainnya, yang tidak kami rekomendasikan.
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.
Hubungkan dengan kredensial GitHub
- 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
- Kredensial GitHub
Azure DevOps Server 2020
Tidak berlaku
- PAT
- Kredensial GitHub
Azure DevOps Server 2019
Tidak berlaku
- OAuth
- PAT
- Kredensial GitHub
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 dicabut atau cakupan izin yang diperlukan berubah dan tidak mencukupi.
Pengguna mungkin kehilangan izin administratif pada repositori GitHub.
Buat ulang PAT dan pastikan cakupan untuk token menyertakan izin yang diperlukan:
repo, read:user, user:email, admin:repo_hook
. Untuk informasi selengkapnya, lihat praktik terbaik untuk menggunakan PAT.
Memperbarui definisi XML untuk memilih jenis item kerja
Jika organisasi Anda menyesuaikan pelacakan kerja menggunakan model proses XML yang Dihosting atau XML lokal dan ingin mengintegrasikan jenis tautan GitHub ke bagian Pengembangan formulir item kerja, Anda harus memperbarui definisi XML untuk jenis item kerja yang sesuai.
Misalnya, untuk menautkan cerita pengguna dan bug ke GitHub menerapkan dan menarik permintaan dalam bagian Pengembangan formulir item kerja, Anda harus memperbarui definisi XML untuk jenis item kerja ini.
Untuk mengubah definisi XML, lakukan langkah-langkah yang diuraikan dalam model proses XML yang dihosting. Untuk setiap jenis item kerja:
- Temukan bagian .
Group Label="Development"
- Untuk mendukung jenis tautan eksternal, GitHub Commit dan GitHub Pull Request, tambahkan baris kode berikut:
Integrasi ini memungkinkan pelacakan aktivitas GitHub yang lancar langsung dari item kerja Anda di Azure Boards.
<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>