Modül 5 · Project management · ⏱ 10 dakika

GitHub Flavored Markdown — etkin yazma

GitHub Flavored Markdown — effective writing

Bu derste neler öğreneceksin

  • GitHub Flavored Markdown (GFM) sözdizimini öğrenmek
  • Tablo, task list, mermaid diyagram gibi GFM'e özgü özellikleri tanımak
  • Issue ve PR açıklamalarında etkili Markdown kullanmak
  • Kod bloklarında dil vurgulama (syntax highlighting) nasıl yapılır?

GitHub Flavored Markdown (GFM), GitHub’ın standart Markdown’ı genişlettiği format. Issue, PR, README, Discussions, Wiki — hepsinde kullanılır. GH-900 sınavı temel ve ileri Markdown syntax’ını sorar.

Temel Markdown özeti

# H1 Başlık
## H2 Başlık
### H3 Başlık

**kalın** veya __kalın__
*italik* veya _italik_
~~üstü çizili~~

[Bağlantı metni](https://example.com)
![Resim alt text](image.png)

> Alıntı (blockquote)

---   (yatay çizgi)

Listeler

# Sırasız liste
- Madde 1
- Madde 2
  - Alt madde
  - Alt madde 2

# Sıralı liste
1. Birinci
2. İkinci
3. Üçüncü

# Task list (GFM özel)
- [x] Tamamlandı
- [ ] Yapılacak
- [x] Bu da tamamlandı

Task list’ler Issue ve PR body’sinde interaktiftir — checkbox’lara tıklanabilir ve tamamlanma yüzdesi gösterilir.

Kod blokları

# Tek satır (inline code)
`git commit` komutunu çalıştır

# Çok satır (fenced code block)
```bash
git add .
git commit -m "feat: add login"
git push origin main
```

```javascript
const greet = (name) => `Hello, ${name}!`;
```

```python
def fibonacci(n):
    return n if n <= 1 else fibonacci(n-1) + fibonacci(n-2)
```

Dil adı belirtmek (bash, javascript, python, yaml, json) syntax highlighting sağlar.

Tablolar (GFM)

| Başlık 1 | Başlık 2 | Başlık 3 |
|----------|----------|----------|
| Hücre 1  | Hücre 2  | Hücre 3  |
| Hücre 4  | Hücre 5  | Hücre 6  |

# Hizalama
| Sol | Orta | Sağ |
|:----|:----:|----:|
| A   |  B   |   C |

Mermaid diyagramları (GFM)

GitHub, Mermaid.js diyagramlarını doğrudan Markdown içinde render eder:

```mermaid
graph TD
    A[Kullanıcı] --> B{Giriş başarılı?}
    B -- Evet --> C[Dashboard]
    B -- Hayır --> D[Hata mesajı]
```

Desteklenen diyagram tipleri: flowchart, sequence, gantt, pie, mindmap ve daha fazlası.

Uyarı blokları (GitHub alerts)

> [!NOTE]
> Bu bir bilgi notudur.

> [!TIP]
> Pratik bir ipucu.

> [!IMPORTANT]
> Önemli bir bilgi.

> [!WARNING]
> Dikkat gerektiren bir uyarı.

> [!CAUTION]
> Ciddi bir uyarı.

GitHub bu blokları renk ve ikon ile özel olarak render eder.

Gizleme (Collapse)

<details>
<summary>Detayları görmek için tıkla</summary>

Gizlenmiş içerik buraya gelir.

```javascript
const x = 1;
```

</details>

Emoji

:rocket: :white_check_mark: :x: :warning: :bulb:

GitHub ve GitHub Discussions emoji shortcode destekler.

Mention ve referans (hatırlatma)

@username → kullanıcı mention
#42 → issue/PR link
SHA → commit link (ör. a3f8c12)

Sınav perspektifinden dikkat noktaları

  • Task list’ler Issue/PR body’sinde [x] ile tıklanabilir hale gelir
  • Mermaid diyagramları GFM’in bir uzantısı — standart Markdown’da yoktur
  • GitHub alerts (> [!NOTE]) GitHub’a özgüdür; diğer Markdown engine’lerinde render olmaz
  • <details> HTML tag’i GFM’de desteklenir

Sırada ne var?

Sonraki derste GitHub’ın arama ve filtreleme sistemini ele alacağız.