Nette Documentation Preview

syntax
Koda nasıl katkıda bulunulur
****************************

.[perex]
Nette Framework'e katkıda bulunmaya hazırlanıyor ve kurallar ve prosedürler hakkında bilgiye mi ihtiyacınız var? Yeni başlayanlar için bu kılavuz, koda etkili bir şekilde nasıl katkıda bulunacağınızı, depolarla nasıl çalışacağınızı ve değişiklikleri nasıl uygulayacağınızı adım adım gösterecektir.


Prosedür
========

Koda katkıda bulunmak için [GitHub|https://github.com] üzerinde bir hesabınızın olması ve Git sürüm kontrol sistemi ile çalışmanın temellerine aşina olmanız gerekir. Git ile çalışmayı bilmiyorsanız, [Git - basit kılavuz |https://rogerdudler.github.io/git-guide/] kılavuzuna bakabilir ve gerekirse birçok [grafik istemciden biri |https://git-scm.com/downloads/guis]ni kullanabilirsiniz.


Ortam ve depo hazırlığı
-----------------------

1) GitHub'da, düzenlemeyi planladığınız [paketin |www:packages] deposunun bir [forkunu |https://help.github.com/en/github/getting-started-with-github/fork-a-repo] oluşturun
2) Bu depoyu bilgisayarınıza [klonlayın |https://docs.github.com/en/repositories/creating-and-managing-repositories/cloning-a-repository]
3) `composer install` komutunu kullanarak [Nette Tester |tester:] dahil olmak üzere bağımlılıkları yükleyin
4) `composer tester` komutunu çalıştırarak testlerin çalıştığını kontrol edin
5) Son yayınlanan sürüme dayalı [yeni bir dal |#Yeni dal] oluşturun


Kendi değişikliklerinizi uygulama
---------------------------------

Şimdi kendi kod değişikliklerinizi yapabilirsiniz:

1) Gerekli değişiklikleri programlayın ve testleri unutmayın
2) `composer tester` kullanarak testlerin başarıyla geçtiğinden emin olun
3) Kodun [kodlama standardına |#Kodlama Standartları] uygun olup olmadığını kontrol edin
4) Değişiklikleri [bu formatta |#Commit açıklaması] bir açıklama ile kaydedin (commit edin)

Her mantıksal adım için bir tane olmak üzere birkaç commit oluşturabilirsiniz. Her commit kendi başına anlamlı olmalıdır.


Değişiklikleri gönderme
-----------------------

Değişikliklerden memnun olduğunuzda, gönderebilirsiniz:

1) Değişiklikleri GitHub'daki fork'unuza gönderin (push)
2) Oradan, bir [pull request|https://help.github.com/articles/creating-a-pull-request] (PR) oluşturarak Nette deposuna gönderin
3) Açıklamada [yeterli bilgi |#Pull request açıklaması] sağlayın


Geri bildirimi dahil etme
-------------------------

Commit'leriniz artık başkaları tarafından görülecektir. Yorumlarla geri bildirim almanız yaygındır:

1) Önerilen değişiklikleri takip edin
2) Bunları yeni commit'ler olarak dahil edin veya [öncekilerle birleştirin |https://help.github.com/en/github/using-git/about-git-rebase]
3) Commit'leri tekrar GitHub'a gönderin, otomatik olarak pull request'te görüneceklerdir

Mevcut bir pull request'i düzenlemek için asla yeni bir pull request oluşturmayın.


Dokümantasyon
-------------

İşlevselliği değiştirdiyseniz veya yeni bir tane eklediyseniz, bunu [dokümantasyona eklemeyi |documentation] de unutmayın.


Yeni dal
========

Mümkünse, değişiklikleri son yayınlanan sürüme, yani ilgili daldaki son etikete göre yapın. `v3.2.1` etiketi için şu komutla bir dal oluşturursunuz:

```shell
git checkout -b new_branch_name v3.2.1
```


Kodlama Standartları
====================

Kodunuz, Nette Framework'te kullanılan [kodlama standardı |coding standard]na uymalıdır. Kodu kontrol etmek ve düzeltmek için otomatik bir araç mevcuttur. Composer aracılığıyla seçtiğiniz bir klasöre **global olarak** kurulabilir:

```shell
composer create-project nette/coding-standard /path/to/nette-coding-standard
```

Şimdi aracı terminalde çalıştırabilmelisiniz. İlk komut kontrol eder ve ikinci komut geçerli dizindeki `src` ve `tests` klasörlerindeki kodu düzeltir:

```shell
/path/to/nette-coding-standard/ecs check
/path/to/nette-coding-standard/ecs check --fix
```


Commit açıklaması
=================

Nette'de commit konularının formatı şöyledir: `Presenter: fixed AJAX detection [Closes #69]`

- İki nokta üst üste ile takip edilen alan
- Mümkünse geçmiş zamanda commit'in amacı, şu kelimelerle başlayın: "added .(yeni özellik eklendi)", "fixed .(hata düzeltildi)", "refactored .(davranış değişikliği olmadan kod yeniden düzenlendi)", changed, removed
- Commit geriye dönük uyumluluğu bozarsa, "BC break" ekleyin
- `(#123)` veya `[Closes #69]` gibi isteğe bağlı sorun izleyici bağlantısı
- Konudan sonra bir boş satır ve ardından forum bağlantıları gibi daha ayrıntılı bir açıklama gelebilir


Pull request açıklaması
=======================

Bir pull request oluştururken, GitHub arayüzü bir başlık ve açıklama girmenize izin verir. Açıklayıcı bir başlık girin ve açıklama bölümünde değişikliğinizin nedenleri hakkında mümkün olduğunca fazla bilgi sağlayın.

Ayrıca, bunun yeni bir özellik mi yoksa bir hata düzeltmesi mi olduğunu ve geriye dönük uyumluluğun bozulup bozulmayacağını (BC break) belirttiğiniz bir başlık da görünecektir. İlgili bir sorun (issue) varsa, pull request onaylandıktan sonra kapatılması için ona bağlantı verin.

```
- bug fix / new feature?  <!-- #issue numbers, if any -->
- BC break? yes/no
- doc PR: nette/docs#?    <!-- highly welcome, see https://nette.org/en/writing -->
```


{{priority: -1}}

Koda nasıl katkıda bulunulur

Nette Framework'e katkıda bulunmaya hazırlanıyor ve kurallar ve prosedürler hakkında bilgiye mi ihtiyacınız var? Yeni başlayanlar için bu kılavuz, koda etkili bir şekilde nasıl katkıda bulunacağınızı, depolarla nasıl çalışacağınızı ve değişiklikleri nasıl uygulayacağınızı adım adım gösterecektir.

Prosedür

Koda katkıda bulunmak için GitHub üzerinde bir hesabınızın olması ve Git sürüm kontrol sistemi ile çalışmanın temellerine aşina olmanız gerekir. Git ile çalışmayı bilmiyorsanız, Git – basit kılavuz kılavuzuna bakabilir ve gerekirse birçok grafik istemciden birini kullanabilirsiniz.

Ortam ve depo hazırlığı

  1. GitHub'da, düzenlemeyi planladığınız paketin deposunun bir forkunu oluşturun
  2. Bu depoyu bilgisayarınıza klonlayın
  3. composer install komutunu kullanarak Nette Tester dahil olmak üzere bağımlılıkları yükleyin
  4. composer tester komutunu çalıştırarak testlerin çalıştığını kontrol edin
  5. Son yayınlanan sürüme dayalı yeni bir dal oluşturun

Kendi değişikliklerinizi uygulama

Şimdi kendi kod değişikliklerinizi yapabilirsiniz:

  1. Gerekli değişiklikleri programlayın ve testleri unutmayın
  2. composer tester kullanarak testlerin başarıyla geçtiğinden emin olun
  3. Kodun kodlama standardına uygun olup olmadığını kontrol edin
  4. Değişiklikleri bu formatta bir açıklama ile kaydedin (commit edin)

Her mantıksal adım için bir tane olmak üzere birkaç commit oluşturabilirsiniz. Her commit kendi başına anlamlı olmalıdır.

Değişiklikleri gönderme

Değişikliklerden memnun olduğunuzda, gönderebilirsiniz:

  1. Değişiklikleri GitHub'daki fork'unuza gönderin (push)
  2. Oradan, bir pull request (PR) oluşturarak Nette deposuna gönderin
  3. Açıklamada yeterli bilgi sağlayın

Geri bildirimi dahil etme

Commit'leriniz artık başkaları tarafından görülecektir. Yorumlarla geri bildirim almanız yaygındır:

  1. Önerilen değişiklikleri takip edin
  2. Bunları yeni commit'ler olarak dahil edin veya öncekilerle birleştirin
  3. Commit'leri tekrar GitHub'a gönderin, otomatik olarak pull request'te görüneceklerdir

Mevcut bir pull request'i düzenlemek için asla yeni bir pull request oluşturmayın.

Dokümantasyon

İşlevselliği değiştirdiyseniz veya yeni bir tane eklediyseniz, bunu dokümantasyona eklemeyi de unutmayın.

Yeni dal

Mümkünse, değişiklikleri son yayınlanan sürüme, yani ilgili daldaki son etikete göre yapın. v3.2.1 etiketi için şu komutla bir dal oluşturursunuz:

git checkout -b new_branch_name v3.2.1

Kodlama Standartları

Kodunuz, Nette Framework'te kullanılan kodlama standardına uymalıdır. Kodu kontrol etmek ve düzeltmek için otomatik bir araç mevcuttur. Composer aracılığıyla seçtiğiniz bir klasöre global olarak kurulabilir:

composer create-project nette/coding-standard /path/to/nette-coding-standard

Şimdi aracı terminalde çalıştırabilmelisiniz. İlk komut kontrol eder ve ikinci komut geçerli dizindeki src ve tests klasörlerindeki kodu düzeltir:

/path/to/nette-coding-standard/ecs check
/path/to/nette-coding-standard/ecs check --fix

Commit açıklaması

Nette'de commit konularının formatı şöyledir: Presenter: fixed AJAX detection [Closes #69]

  • İki nokta üst üste ile takip edilen alan
  • Mümkünse geçmiş zamanda commit'in amacı, şu kelimelerle başlayın: added, fixed, refactored, changed, removed
  • Commit geriye dönük uyumluluğu bozarsa, „BC break“ ekleyin
  • (#123) veya [Closes #69] gibi isteğe bağlı sorun izleyici bağlantısı
  • Konudan sonra bir boş satır ve ardından forum bağlantıları gibi daha ayrıntılı bir açıklama gelebilir

Pull request açıklaması

Bir pull request oluştururken, GitHub arayüzü bir başlık ve açıklama girmenize izin verir. Açıklayıcı bir başlık girin ve açıklama bölümünde değişikliğinizin nedenleri hakkında mümkün olduğunca fazla bilgi sağlayın.

Ayrıca, bunun yeni bir özellik mi yoksa bir hata düzeltmesi mi olduğunu ve geriye dönük uyumluluğun bozulup bozulmayacağını (BC break) belirttiğiniz bir başlık da görünecektir. İlgili bir sorun (issue) varsa, pull request onaylandıktan sonra kapatılması için ona bağlantı verin.

- bug fix / new feature?  <!-- #issue numbers, if any -->
- BC break? yes/no
- doc PR: nette/docs#?    <!-- highly welcome, see https://nette.org/en/writing -->