─░├žeri─če ge├ž

S├╝rekli Entegrasyon (CI)

S├╝rekli Entegrasyon (CI), de─či┼čikliklerin entegre edilmesini ve otomatik olarak test edilmesini i├žeren yaz─▒l─▒m geli┼čtirmenin ├Ânemli bir y├Ân├╝d├╝r. CI, geli┼čtirme s├╝recinde sorunlar─▒ erken ve s─▒kl─▒kla yakalayarak y├╝ksek kaliteli kodu korumam─▒z─▒ sa─člar. Ultralytics adresinde, kod taban─▒m─▒z─▒n kalitesini ve b├╝t├╝nl├╝─č├╝n├╝ sa─člamak i├žin ├že┼čitli CI testleri kullan─▒yoruz.

CI Eylemleri

─░┼čte CI faaliyetlerimizin k─▒sa bir a├ž─▒klamas─▒:

  • CI: Bu, birim testlerini, linting kontrollerini ve bazen depoya ba─čl─▒ olarak daha kapsaml─▒ testleri ├žal─▒┼čt─▒rmay─▒ i├žeren birincil CI testimizdir.
  • Docker Da─č─▒t─▒m─▒: Bu test, Docker dosyas─▒n─▒n ve ilgili komut dosyalar─▒n─▒n do─čru ├žal─▒┼čt─▒─č─▒ndan emin olmak i├žin Docker kullanarak projenin da─č─▒t─▒m─▒n─▒ kontrol eder.
  • Bozuk Ba─člant─▒lar: Bu test, kod taban─▒n─▒ markdown veya HTML dosyalar─▒m─▒zdaki herhangi bir k─▒r─▒k veya ├Âl├╝ ba─člant─▒ i├žin tarar.
  • CodeQL: CodeQL, kodumuz ├╝zerinde semantik analiz ger├žekle┼čtiren, potansiyel g├╝venlik a├ž─▒klar─▒n─▒ bulmaya ve y├╝ksek kaliteli kodu korumaya yard─▒mc─▒ olan GitHub'─▒n bir arac─▒d─▒r.
  • PyPI Publishing: Bu test, projenin paketlenip PyPi'de hatas─▒z bir ┼čekilde yay─▒nlan─▒p yay─▒nlanamayaca─č─▒n─▒ kontrol eder.

CI Sonu├žlar─▒

A┼ča─č─▒da ana depolar─▒m─▒z i├žin bu CI testlerinin durumunu g├Âsteren tablo yer almaktad─▒r:

Depo CI Docker Da─č─▒t─▒m─▒ Bozuk Ba─člant─▒lar CodeQL PyPI ve Docs Yay─▒nc─▒l─▒─č─▒
yolov3 YOLOv3 CI Docker G├Âr├╝nt├╝lerini Yay─▒nlama Bozuk ba─člant─▒lar─▒ kontrol edin CodeQL
yolov5 YOLOv5 CI Docker G├Âr├╝nt├╝lerini Yay─▒nlama Bozuk ba─člant─▒lar─▒ kontrol edin CodeQL
ultralytics ultralytics CI Docker G├Âr├╝nt├╝lerini Yay─▒nlama Bozuk ba─člant─▒lar─▒ kontrol edin CodeQL PyPI'da Yay─▒nlay─▒n ve Dok├╝manlar─▒ Da─č─▒t─▒n
g├Âbek HUB CI Bozuk ba─člant─▒lar─▒ kontrol edin
dok├╝manlar Bozuk ba─člant─▒lar─▒ kontrol edinAlan Adlar─▒n─▒ Kontrol Et pages-build-deployment

Her rozet, ilgili CI testinin son ├žal─▒┼čt─▒rma durumunu g├Âsterir. main ilgili deponun dal─▒. Bir test ba┼čar─▒s─▒z olursa, rozet "ba┼čar─▒s─▒z" durumunu g├Âsterir ve ge├žerse "ge├žiyor" durumunu g├Âsterir.

Bir testin ba┼čar─▒s─▒z oldu─čunu fark ederseniz, bunu ilgili depodaki bir GitHub sorunu arac─▒l─▒─č─▒yla bildirebilirseniz ├žok yard─▒mc─▒ olur.

Unutmay─▒n, ba┼čar─▒l─▒ bir CI testi her ┼čeyin m├╝kemmel oldu─ču anlam─▒na gelmez. Da─č─▒t─▒mdan veya de─či┼čiklikleri birle┼čtirmeden ├Ânce kodun her zaman manuel olarak g├Âzden ge├žirilmesi ├Ânerilir.

Kod Kapsam─▒

Kod kapsam─▒, testleriniz ├žal─▒┼čt─▒─č─▒nda kod taban─▒n─▒z─▒n y├╝zde ka├ž─▒n─▒n ├žal─▒┼čt─▒r─▒ld─▒─č─▒n─▒ g├Âsteren bir metriktir. Testlerinizin kodunuzu ne kadar iyi ├žal─▒┼čt─▒rd─▒─č─▒na dair fikir verir ve uygulaman─▒z─▒n test edilmemi┼č k─▒s─▒mlar─▒n─▒ belirlemede ├žok ├Ânemli olabilir. Y├╝ksek bir kod kapsama y├╝zdesi genellikle daha d├╝┼č├╝k hata olas─▒l─▒─č─▒ ile ili┼čkilendirilir. Ancak, kod kapsam─▒n─▒n hatalar─▒n olmad─▒─č─▒n─▒ garanti etmedi─čini anlamak ├Ânemlidir. Yaln─▒zca kodun hangi b├Âl├╝mlerinin testler taraf─▒ndan y├╝r├╝t├╝ld├╝─č├╝n├╝ g├Âsterir.

codecov.io ile entegrasyon

Ultralytics adresinde, kod kapsam─▒n─▒ ├Âl├žmek ve g├Ârselle┼čtirmek i├žin pop├╝ler bir ├ževrimi├ži platform olan codecov.io ile depolar─▒m─▒z─▒ entegre ettik. Codecov, ayr─▒nt─▒l─▒ bilgiler, taahh├╝tler aras─▒nda kapsam kar┼č─▒la┼čt─▒rmalar─▒ ve hangi sat─▒rlar─▒n kapsand─▒─č─▒n─▒ g├Âsteren do─črudan kodunuz ├╝zerinde g├Ârsel kaplamalar sa─člar.

Codecov ile entegre olarak, hatalara e─čilimli olabilecek veya daha fazla test edilmesi gereken alanlara odaklanarak kodumuzun kalitesini korumay─▒ ve iyile┼čtirmeyi ama├žl─▒yoruz.

Kapsam Sonu├žlar─▒

Kod kapsam─▒ durumuna h─▒zl─▒ bir ┼čekilde g├Âz atmak i├žin ultralytics python paketine bir rozet ve g├╝ne┼č patlamas─▒ g├Ârseli ekledik. ultralytics kapsama sonu├žlar─▒. Bu g├Âr├╝nt├╝ler, testlerimiz taraf─▒ndan kapsanan kod y├╝zdesini g├Âstermekte ve test ├žal─▒┼čmalar─▒m─▒z─▒n bir bak─▒┼čta ├Âl├ž├╝lmesini sa─člamaktad─▒r. T├╝m ayr─▒nt─▒lar i├žin l├╝tfen https://codecov.io/github/ultralytics/ultralytics adreslerine bak─▒n.

Depo Kod Kapsam─▒
ultralytics codecov

A┼ča─č─▒daki g├╝ne┼č patlamas─▒ grafi─činde, en i├žteki daire projenin tamam─▒d─▒r, merkezden uzakla┼čt─▒k├ža klas├Ârler ve son olarak tek bir dosya yer al─▒r. Her bir dilimin boyutu ve rengi s─▒ras─▒yla ifade say─▒s─▒n─▒ ve kapsam─▒ temsil etmektedir.

Ultralytics Codecov G├Âr├╝nt├╝



Created 2023-11-12, Updated 2024-06-10
Authors: glenn-jocher (7), Burhan-Q (1)

Yorumlar