GitHub entegrasyonunu kurma
Bu kılavuz, kurulumun GitHub’a özgü kısımlarını ele alır. GitHub, desteklenen üç kod barındırıcısından biridir — GitLab ya da Bitbucket’ı bağlamak ve bir çalışma alanının bunları nasıl karıştırdığı için Bir kod barındırıcısı bağlama sayfasına bakın.
Önkoşullar
Bölüm başlığı “Önkoşullar”- Üzerinde çalışmak istediğiniz depolara erişimi olan bir GitHub hesabı
- Sunucunuz için kaydedilmiş bir GitHub App (bkz.
GitHub App oluşturma) — böylece oturum
açabilirsiniz — ya da yapıştırmak için
repoveread:orgyetkilerine sahip bir kişisel erişim token’ı
GitHub ile oturum açma
Bölüm başlığı “GitHub ile oturum açma”Bir cihaz akışı: GitHub size kısa bir kod gösterir, siz onu github.com’da onaylarsınız ve sunucu kimlik bilgisini alır — callback URL yok, port yok, açığa çıkarılacak hiçbir şey yok. Sunucunun bir istemci id’si olduğunda kullanılabilir; resmî bir yapı bunu zaten içerir.
- Ayarlar → Çalışma alanı → Profil ve kimlik → Kod barındırma bölümüne gidin (ya da ilk kurulumun ilk adımına)
- GitHub satırında GitHub ile oturum aç’a tıklayın
- Bir iletişim kutusu sekiz karakterlik bir kod gösterir ve tarayıcınızda github.com/login/device adresini açar. Kod zaten panonuzdadır
- Yapıştırın, uygulamayı onaylayın ve geri dönün. Satır kendiliğinden “kullanıcı-adınız olarak oturum açıldı” durumuna geçer
Tarayıcıda işinizi bitirirken iletişim kutusu kapatılabilir — sunucu, kodun süresi dolana kadar (yaklaşık 15 dakika) yoklamayı sürdürür; böylece oturum açma yine de tamamlanır.
Ya da bir token yapıştırın
Bölüm başlığı “Ya da bir token yapıştırın”Sunucunun uygulaması olmadığında, uygulama ihtiyaç duyduğunuz bir hesaba kurulmadığında ya da yalnızca bir PAT kullanmayı tercih ettiğinizdeki geri dönüş yolu.
- Ayarlar → Çalışma alanı → Profil ve kimlik → Kod barındırma bölümüne gidin
- GitHub satırında Token ekle’ye tıklayın
repoveread:orgiçeren bir token yapıştırın (klasik) ve kaydedin. İnce taneli bir token için depo Contents ve Pull requests (okuma ve yazma) ile Checks ve Actions (okuma) gerekir.
Token saklanırken sınanır; böylece satır ait olduğu hesabı adlandırabilir. Kaldırmak için Bağlantıyı kes’e tıklayın.
Kontrol noktası: GitHub satırı “kullanıcı-adınız olarak oturum açıldı” yazar. Yanıt veren kimlik bilgisi sizinki olmadığında bir son ek kaynağı adlandırır — “bu sunucunun uygulaması üzerinden” ya da “ortamdan”.
Entegrasyonun size verdikleri
Bölüm başlığı “Entegrasyonun size verdikleri”| Özellik | Nasıl |
|---|---|
| PR listesi ve ayrıntısı | Sunucudan, uygulama kimliğiyle ya da kendi kimlik bilginizle GitHub REST API’si |
| Kontrol çalıştırmaları | GitHub Checks API’si |
| İnceleme yayımlama | İncelemenizi PR’a gönderen, kullanıcı kapılı bir adım |
| Depo kaydı | Bir checkout, origin remote’u github.com’a — ya da gitlab.com / bitbucket.org’a — işaret ediyorsa kabul edilir |
| Ajanın GitHub erişimi | Kimlik bilgisi broker’ı salt okunur bir token’ı GH_TOKEN / GITHUB_TOKEN olarak enjekte eder; push’lar Control Center’dan geçer |
| Bildirim ping’leri | GitHub bildirim gelen kutunuzu sunucu tarafında yoklamak “Pull request’te bahsedildi” ve “İnceleme istendi” bildirimlerini tetikler |
| Kullanıcı profilleri | Profil üzerine gelme kartları ve yazara göre PR filtreleme |
Bazı yollar, daha ucuza geldiği yerlerde REST yerine GraphQL API’sini kullanır — PR oluşturma seçicisi için dal etkinliği ve bir inceleme istendi bildiriminin hâlâ beklemede olup olmadığını belirleyen canlı inceleme durumu.
GitHub kesintilerine dikkat edin
Bölüm başlığı “GitHub kesintilerine dikkat edin”Bir sağlayıcı bozulduğunda başlık çubuğu GitHub, Claude, OpenAI ve Kimi’yi kapsayan bir durum çipi gösterir. Her şey yolundayken gizlenir — varlık sorunu bildirir, yokluğunu değil.
Her sağlayıcının durumunu ve bir yenile düğmesini içeren bir açılır panel açmak için çipe tıklayın. Durumlar her iki dakikada bir kendiliğinden yenilenir.
Ajanların GitHub’da nasıl davrandığını bilin
Bölüm başlığı “Ajanların GitHub’da nasıl davrandığını bilin”- Bir GitHub çalışma ağacında çalışan bir ajan her zaman salt okunur bir GitHub token’ı alır. Bir push, Uzak depoya push et kuralına soran ve ardından onu ajanın asla elinde tutmadığı bir yazma token’ıyla ileten Control Center’dan geçer. Bkz. Sandbox politikalarını yapılandırma
- Bir ajanın yaptığı commit’ler ajan olarak yazılır — görünen ad artı
(agent), ajanın kimliğine göre anahtarlanmış sentetik bir adreste — asla bir insan olarak değil. İsteyen kişi birCo-Authored-Bytrailer’ıyla anılır - Bir GitHub App yapılandırıldığında broker, geniş bir token vermek yerine her
başlatma için ince taneli, depo kapsamlı, kabaca bir saatlik kurulum token’ları
üretir. Kurulum, çalıştırmanın deposunun sahibinden çözülür; böylece birkaç
hesaba kurulmuş tek bir uygulama, çalıştırmanın hangisine dokunduğuna göre
doğru şekilde kapsamlanır. Uygulama yoksa ajanlar, salt okunura daraltılamayan
ortam token’ını alır: push kuralı o zaman
git push’u bağlar, ama token’ı doğrudan kullanan kodu bağlamaz - Token her zaman broker’ındır, asla isteği yapan üyenin kendisinin değildir. Sunucunun token’ı, sahibi olmayan ve GitHub’ı bağlamamış bir üye adına hareket eden bir çalıştırmadan esirgenir
Sorun giderme
Bölüm başlığı “Sorun giderme”PR listesi boş ve GitHub’ın bağlı olmadığını söylüyor
Bölüm başlığı “PR listesi boş ve GitHub’ın bağlı olmadığını söylüyor”Bu sunucuda GitHub kimlik bilginiz yok. Kod barındırma altında oturum açın ya da bir token yapıştırın. Diğer forge’lardaki depolar etkilenmez — yalnızca GitHub’ınkiler hiçbir şey katmaz.
Satır “Token ekle” sunuyor ama “GitHub ile oturum aç” sunmuyor
Bölüm başlığı “Satır “Token ekle” sunuyor ama “GitHub ile oturum aç” sunmuyor”Sunucunun istemci id’si yok — bu, kaynaktan derlenen bir yapı için normal durumdur; çünkü kimlik bilgileri yalnızca resmî yapılara gömülür. Bkz. GitHub App oluşturma: yaklaşık iki dakika sürer ve yalnızca sunucu sahibinin, bir kez yapması gerekir.
Oturum açma iletişim kutusu sağlayıcının cihaz kodu döndürmediğini söylüyor
Bölüm başlığı “Oturum açma iletişim kutusu sağlayıcının cihaz kodu döndürmediğini söylüyor”GitHub App var ama Device flow onay kutusu kapalı. Uygulamanın ayarlarında (General → Device flow) açıp yeniden deneyin.
Satır, kendi hesabımı beklerken “bu sunucunun uygulaması üzerinden” diyor
Bölüm başlığı “Satır, kendi hesabımı beklerken “bu sunucunun uygulaması üzerinden” diyor”Oturum açmamışsınız; gördüğünüz şey sunucunun uygulama kimliğinin yanıt vermesi. O satırda GitHub ile oturum aç’a tıklayın.
İnce taneli bir PAT birleştirme düğmesi ya da kontrol durumu göstermiyor
Bölüm başlığı “İnce taneli bir PAT birleştirme düğmesi ya da kontrol durumu göstermiyor”Token’ın Contents ve Pull requests (okuma ve yazma) ile Checks ve Actions (okuma) yetkilerine ihtiyacı vardır. Değiştirdikten sonra Kod barındırma altında yeniden yapıştırın.
Depo ekleme reddediliyor
Bölüm başlığı “Depo ekleme reddediliyor”Kayıt için üçünün de olması gerekir: yol bir git çalışma ağacının içindedir, bir
origin remote’u vardır ve o remote desteklenen bir forge’a (github.com,
gitlab.com ya da bitbucket.org) işaret eder. Bkz.
Bir çalışma alanına depo ekleme.
Yoğun kullanımdan sonra her şey bir süre çalışmayı durduruyor
Bölüm başlığı “Yoğun kullanımdan sonra her şey bir süre çalışmayı durduruyor”Bu, hız sınırı devre kesicisidir. GitHub birincil sınırına ulaştığını
x-ratelimit-remaining: 0 taşıyan bir 403 ve bir sıfırlama zamanıyla bildirir;
istemci bunu gördüğünde, pencere geçene kadar ağ çağrısı yapmadan daha fazla
isteği yerel olarak başarısız kılar; böylece bir yeniden deneme fırtınası sınırı
derinleştiremez. Geçici hatalar, retry-after değerine uyularak üstel geri
çekilmeyle en fazla üç kez yeniden denenir.