GitHub ve gereksinim izlenebilirliği — kod, iş ve gereksinim tek yerde
Yazılım içeren ürün ve görevler GitHub kaynağına bağlanır; commit, pull request, sürüm notu, derleme ve SBOM PORTWARE'de görünür; gereksinimden göreve ve koda kesintisiz iz.
- Görevde geliştirme paneliDallar, commit'ler, PR durumu, inceleme ve kontroller tek bakışta.
- Anahtarla bağT428 dal adında, commit'te ya da PR'da geçince bağ kendiliğinden kurulur.
- Ürün sürümü görünürYazılımlı üründe GitHub düğmesi son sürümü ve notlarını gösterir.
- Gereksinimden koda izMatris neyin karşılandığını, neyin açık kaldığını kanıtla gösterir.

Nerede görünür: Proje · GitHub menüsü, görev formu Geliştirme sekmesi, proje GitHub sekmesi · Ürün formu Yazılım sekmesi · Proje · Gereksinimler
Neden gerekti
Yazılım içeren bir üründe üç soru hep ayrı araçlarda cevaplanıyordu: kod nerede, hangi görev hangi değişiklikle kapandı, hangi gereksinim gerçekten karşılandı. Satış ve destek GitHub'a giremiyordu; geliştirici ise görevin durumunu elle güncelliyordu. Jira, Linear ve Polarion'un çözdüğü bu boşluk artık PORTWARE'in içinde kapanıyor.
Bağlantı
- İki kimlik yolu: ince ayarlı erişim anahtarı (küçük ekip) ya da GitHub App (organizasyon; saatte 15 000 istek, kişiye bağlı değil). GitHub Enterprise Server adresi de verilebilir.
- Gizli bilgiler yalnız yazılır: anahtar bir kez girilir, ekranda bir daha görünmez.
- Anlık güncelleme: depoya tek tıkla webhook kurulur; imza (HMAC-SHA256) doğrulanır, aynı teslimat iki kez işlenmez. Webhook olmasa da 30 dakikada bir eşitleme çalışır; değişmeyen veri GitHub istek bütçesinden düşmez.
Görevde geliştirme paneli
Görev formunda Geliştirme sekmesi: görev anahtarı ve önerilen dal adı (kopyala düğmesiyle), dallar, commit'ler, pull request'ler — durum, inceleme ve kontrol sonucuyla. GitHub'da Dal Oluştur düğmesi dalı ana dalın son hâlinden açar.
Bağ kendiliğinden kurulur, geliştirici yeni bir şey öğrenmez:
T428,T-428,TASK-428ya da görevin PORTWARE adresi; dal adında, commit mesajında, PR başlığında veya açıklamasında.Fixes T428(GitHub'ın dokuz kapanış kelimesi): değişiklik ana dala birleşince görevi kapatır.T428 #comment metin #time 1h 30m: görev yorumunu ve zaman kaydını commit yazar; yalnız e-postası PORTWARE kullanıcısıyla eşleşen yazar için.
Proje otomasyonu
Proje ayarlarında GitHub sekmesi: depolar ve isteğe bağlı otomasyon. Dal ya da taslak PR açılınca görev "iş başladı" aşamasına, PR incelemeye açılınca "incelemede"ye, ana dala birleşince "bitti"ye geçer. Görevler yalnız ileri gider; elle ileri alınmış bir görev geri çekilmez.
Yazılım içeren ürünler
Ürün formundaki Yazılım İçerir işareti ürün tipidir: her kurulumda aynı davranır. İşaretli üründe GitHub düğmesi son sürüm etiketini gösterir ve depoya götürür; Yazılım sekmesi depoları, son sürümü, açık PR ve kayıtları ve son değişikliği listeler. Yeni bir sürüm yayımlanınca ürün sohbetine not düşer. SBOM Oku depo bağımlılıklarını sürüm ve lisanslarıyla getirir (yazılım malzeme listesi; AB Siber Dayanıklılık Yasası kanıtı).
Gereksinim izlenebilirliği
Proje · Gereksinimler: her gereksinimin anahtarı (REQ-0001), türü, MoSCoW önceliği, kabul kriterleri ve doğrulama yöntemi vardır. Liste izlenebilirlik matrisidir: görev sayısı, kapsama yüzdesi, kod değişiklikleri ve iz durumu — karşılanmadı, sürüyor, karşılandı, doğrulandı. Durumun söylediği ile kanıtın gösterdiği ayrışınca satır kırmızı Eksik olarak işaretlenir. REQ-0012 bir PR'da geçince o değişiklik gereksinimin kanıtı olur.
Doğrulama (V-modeli). Gereksinimin Görevler sekmesinde onu yapan görevler seçilir ya da Görev Oluştur ile açılır. Testler sekmesinde kabul kriterini kanıtlayan test senaryoları (TC-0001) durur: seviye (birim, entegrasyon, sistem, kabul), elle ya da otomatik (test yöntemi ya da CI işi), ön koşul, adımlar, beklenen sonuç. Her test koşusu sonucu (geçti, kaldı, engellendi, atlandı), denenen sürümü (yazılım sürümü, parça revizyonu), ortamı ve kanıtı kaydeder; kalan koşu tek tıkla gereksinime bağlı bir hata görevi açar. Formdaki sarı satır sıradaki adımı söyler; her test geçince Testlerden Doğrula hangi testin hangi sürümde geçtiğini not eder. PLM kuruluysa değişiklik emrinin Doğrulama sekmesi etkilediği gereksinimleri ve onları kanıtlayan koşuları gösterir.
PORTWARE Git Studio
Ürünün GitHub düğmesi artık doğrudan GitHub'a gitmez; ürünün yazılım stüdyosunu açar. GitHub'da açmak stüdyonun içinde bir düğmedir. Ayrı bir Git Studio uygulaması da yazılım ürünlerini, sürümleri, baseline'ları, incelemeleri, derlemeleri ve güvenlik uyarılarını bir arada gösterir.
| Sekme | Ne gösterir |
|---|---|
| Genel Bakış | Yazılım sürümü, geçerli baseline, her depo (rolüyle: gömülü yazılım, uygulama, kütüphane, donanım tasarımı…), açık işler, kırık derleme |
| Sürümler | Etiketler ve yayımlar; her sürümün değişiklik seviyesi (major/minor/patch) ve commit sayısı |
| Değişiklikler | Son commit'ler türleriyle (feat, fix, docs…), katkıda bulunanlar; commit formunda renkli satır satır fark |
| İncelemeler | Pull request'ler, inceleme ve kontrol durumu, yorum sayısı; PR formunda konuşma dizisi ve GitHub'a Yorum Yaz |
| Baseline'lar | Ürün sürümleri: hangi deponun hangi sürümü, hangi donanım revizyonu için |
| Müşteriler | Hangi müşteride, hangi seri numaralarında hangi baseline çalışıyor |
| Derleme ve Dağıtım | GitHub Actions çalışmaları ve ortam bazında dağıtımlar |
| Güvenlik | Dependabot uyarıları ve yazılım malzeme listesi |
| Gereksinimler | Ürünün gereksinimleri; onları yapan görevler, kanıtlayan testler ve son sonuçları |
Genel bakış İçgörüler ile açılır: kalan derleme, açık güvenlik uyarıları, kanıtı olmayan onaylı gereksinimler, kalan testler, eski sürümdeki müşteriler, bir haftadır bekleyen pull request'ler, son sürümden beri birikmiş değişiklikler. Her sekmenin başında ne gösterdiğini ve nasıl kullanılacağını anlatan tek satır vardır.
Sürüm ve değişiklik günlüğü. Bir sürümün Değişiklik Günlüğü Oluştur düğmesi önceki sürümle karşılaştırır, commit'leri Conventional Commits türüne göre gruplar (yeni özellikler, düzeltmeler, uyumluluğu bozanlar…), aralıktaki pull request'leri ve gereksinimleri listeler ve anlamsal sürümleme seviyesini önerir. Sürümleri Karşılaştır iki sürüm arasındaki her şeyi dosya farklarıyla gösterir; Yeni Sürüm GitHub'da etiket ya da notları otomatik üretilen bir yayım oluşturur.
Yazılım baseline'ı (yapılandırma yönetimi). EIA-649 / ISO 10007'nin dediği gibi: bir ürün sürümü, her deponun hangi sürümünden oluşur? Baseline ürünü, sürümü ve geçerli olduğu donanım revizyonunu tutar; her satır bir depoyu bir etikete bağlar. Yayımla her satırı tam commit'ine dondurur ve ürünün gereksinimlerini o günkü iz durumlarıyla kaydeder. Öncekiyle Karşılaştır iki ürün sürümü arasında depo depo ne değiştiğini, hangi gereksinimin izinin değiştiğini raporlar.
Kod tarayıcı ve görevden kayıt. Kodu Gez herhangi bir sürümde klasör ve dosyaları okur. Görevdeki GitHub Kaydı Olarak Aç görevi depoda bir issue olarak açar ve iki yönlü bağlar.
Kim ne yapar. Okumak herkese açıktır ve GitHub'da hiçbir şeyi değiştirmez. GitHub'a yazan işlemler (Yeni Sürüm, GitHub'a Yorum Yaz, GitHub Kaydı Olarak Aç) şirketin anahtarını kullandığı için yalnız GitHub yöneticisi rolündeki kullanıcılara açıktır. Yayımlanmış bir baseline değiştirilemez ve silinemez; yalnız proje yöneticisi onu yeniden taslağa alabilir. Bir sürüm etiketine, dala ya da dosya yoluna yazılan değer depodan dışarı çıkamaz: .. gibi yollar reddedilir.
Çalışma Masası. Sade bir yazılım geliştirme ortamı: solda gezgin, ortada sekmeli editör, altta durum çubuğu. Gez bir sürümün bütün dosyalarını açar; Karşılaştır iki sürümü WinMerge gibi karşılaştırır: bütün ağaç gösterilir (değişen, eklenen, silinen, yeniden adlandırılan, aynı), bir dosya iki sürümüyle yan yana ya da tek sütunda açılır, boşluk farkları yok sayılabilir, değişmeyen bölümler katlanır, oklarla bir sonraki farka geçilir. Editör VS Code'un editörüdür (Monaco, açık kaynak): Notepad++ renkleri ya da koyu Monokai teması, blok katlama, renkli parantezler, kaydırırken görünen fonksiyon başlığı. Görseller yan yana, kaydırmalı ya da saydamlıkla karşılaştırılır; PDF önizlenir; ikili dosyalarda boyut, parmak izi ve ilk baytlar gösterilir, iki sürüm de indirilir. Bir dosya istenirse GitHub'da ya da tarayıcıdaki VS Code'da (github.dev) açılır. Sürümler listeden seçilir: etiket, dal, baseline ya da commit.
Görevin yazılımı. Görevdeki GitHub düğmesi koda gitmeden önce görevin yazılımını özetler: bu görevden kaynaklı geliştirme var mı (commit, pull request, dal, satır), kodun tamamı hangi sürümde, o sürümü içeren yayımlanmış baseline'lar ve onu çalıştıran müşteriler, görevin karşıladığı gereksinimler ve testleri. Görevin Değişikliklerini Gör Çalışma Masası'nı açar. Ürünün Gereksinimler sekmesi tıklanabilir bir listedir: görevler, geçen testler, kod değişiklikleri. Çok büyük depolarda (GitHub'ın ağacı tek cevapta veremediği) gezgin klasörleri açıldıkça okur; karşılaştırma yalnız içeriği değişen klasörlere iner.
Çalışma Masası araçları. <kbd>Ctrl</kbd>+<kbd>P</kbd> dosya adının birkaç harfiyle dosyayı bulur; Ana Hat açık dosyanın fonksiyon, sınıf ve başlıklarını listeler (C/C++, Python, JavaScript, QML, Markdown, XML); Geçmiş dosyayı değiştiren commit'leri gösterir ve her birini bir öncekiyle karşılaştırır; üstte yol kırıntıları, yakınlaştırma ve mini harita vardır; <kbd>?</kbd> kısayolları açar. Karşılama ekranı seçili aralıkta nerede, ne tür ve kimin değiştirdiğini çubuklarla gösterir. Cowork'e Sor açık dosyayı ya da farkı açıklatacak soruyu Cowork paneline hazırlar; göndermek kullanıcının elindedir.
Derleme ve dağıtım. Derleme ve dağıtım kodun bulunduğu yerde, GitHub Actions'ta çalışır. Deponun Derleme ve Dağıtım sekmesi workflow'ları okur; her birinin rolü (derle, test, dağıt, yayım) seçilir. workflow_dispatch tetikleyicisi olan workflow depo başlığındaki Derle ya da Dağıt ile bir dal ya da etiket üzerinde, girdileriyle başlatılır (GitHub yöneticisi; anahtar "Actions: Read and write" ister). Koşular Derlemeler'de görünür.
Ayarlar. Proje › Yapılandırma › Ayarlar › Git Studio: sürüm sayılmayacak etiket önekleri (varsayılan backup/, archive/, tmp/, wip/) ve karşılaştırmanın son iki yayımla mı son iki etiketle mi açılacağı.
Müşteri konfigürasyonları. Yayımlanmış bir yazılım baseline'ı bir müşteriye, seri numaralarına ve sahaya sabitlenir. Bir cihazda aynı anda tek yazılım çalışır; seri numarası formu o cihazın yazılımını gösterir. Ürünün daha yeni bir baseline'ı yayımlanınca geride kalan müşteriler sarı görünür; Yükseltme Öner planlı bir konfigürasyon ve neyin değişeceğini anlatan raporu oluşturur. Müşteriye özel yazılım bir müşteri varyantı baseline'ıdır.
PLM ile. PLM kuruluysa (PORTWARE Git Studio · PLM, kendiliğinden kurulur) yazılım baseline'ı onu yayımlayan değişiklik emrini, geçerli olduğu donanım baseline'larını ve uyumlu parça revizyonlarını taşır; değişiklik emrinde ve donanım baseline'ında Yazılım sekmesi vardır.
Cowork ve MCP. Cowork ve MCP ile bağlanan yapay zekâ istemcileri (Claude, ChatGPT, Cursor) sürümleri listeler, iki sürümü karşılaştırır, bir dosyayı herhangi bir sürümde okur, bir dosyanın farkını verir, ürünün baseline'larını ve hangi müşteride hangi yazılımın çalıştığını söyler, yükseltmenin etkisini anlatır. Baseline oluşturmak, yayımlamak, müşteriye sürüm sabitlemek ve yükseltme önermek kullanıcının onayıyla yapılır. Kaynak koda yazılmaz.
Webhook'u elle eklemek. Anahtarda "Webhooks: Read and write" izni yoksa Webhook Kur hata vermez: GitHub'da elle eklemek için adresi, gizli anahtarı ve olayları veren bir yönerge açılır; ekledikten sonra Kuruldu Olarak İşaretle.
Teslimat ölçüleri
Depo genel bakışında Teslimat satırı: son 90 günde yayımlanan sürüm sayısı, ana dala birleşen bir değişikliğin ilk sürüme girmesine kadar geçen günlerin medyanı (DORA teslim süresi; dağıtım yerine sürüme kadar ölçülür) ve pull request'in açılıştan birleşmeye süresi.
Cowork ile
Cowork asistanı aynı kayıtlardan cevap verir, GitHub'a istek harcamaz:
- "T428'in kod durumu ne?" — dallar, pull request'ler (inceleme, kontroller), commit'ler.
- "Sürücünün son yazılım sürümü ve notları?" — ürünün depoları, son sürüm, açık işler.
- "REQ-0012 karşılandı mı?" ya da "Firmware projesinde eksik gereksinim var mı?"
- "Bu hafta depoda ne oldu?" — commit, birleşen PR, sürüm, kırık derleme.
Onay kartıyla yazar: bir pull request'i ya da commit'i göreve bağlar, görevin dalını GitHub'da açar.
Sürümler
Proje izleyicisi kuruluysa bir PORTWARE sürümü (1.4) aynı adla etiketlenen GitHub sürümüne (v1.4) kendiliğinden bağlanır; sürüm notları PORTWARE sürüm formunda görünür, istenirse sürüm GitHub'da yayımlanınca kapanır.
Sınırlar
- İlk eşitleme ana daldaki son 300 commit'i okur; daha eskisi GitHub'da kalır.
- Anahtarlar, depo bağlandıktan sonra yazılan commit, PR, kayıt ve sürümlerden okunur (depo formunda Anahtarları Şu Tarihten Oku): eski bir mesajdaki "T17" bir PORTWARE görevi değildir. Daha eskisi elle ya da Cowork ile bağlanır.
- Açık PR'lerin inceleme ve kontrol ayrıntısı her eşitlemede ilk 10 PR için okunur; webhook her PR'ı anında günceller.
- Anahtarsız (yalnız açık depolar) bağlantı saatte 60 istekle sınırlıdır.
- Anahtarın okuyamadığı bölüm (ör. pull request'ler) depo formunda sarı uyarıyla ve eklenmesi gereken GitHub izniyle yazılır; diğer bölümler eşitlenmeye devam eder. İzin sonradan eklenince o bölümün geçmişi de gelir.






| Modül | Ne işe yarar | Sürüm |
|---|---|---|
| PORTWARE GitHub | GitHub inside PORTWARE: repositories on products and projects, a development panel on every task, requirements traced to code | 19.0.1.6.1 |
| PORTWARE Git Studio | The software lifecycle of a product inside PORTWARE: versions, changes, reviews, pipelines, security, baselines and requirements | 19.0.3.2.4 |
| PORTWARE Requirements | Requirements with acceptance criteria and a traceability matrix from requirement to task, product and verification | 19.0.1.1.0 |
| PORTWARE GitHub Releases for Project Tracker | A PORTWARE release (fix version) shows its GitHub release: tag, date and release notes | 19.0.1.0.0 |
| PORTWARE GitHub for Cowork | Cowork answers from GitHub: a task's code status, a product's software release, a requirement's evidence, a repository's week | 19.0.1.0.0 |