Değişiklik yapmak
Making changes
Bu derste neler öğreneceksin
- Claude'un Edit/Write tool'unu nasıl önerdiğini ve diff onayının nasıl çalıştığını anlamak
- Küçük adım vs büyük adım promptlamasının pratik farkı
- Yanlış giden bir değişikliği geri almak ve yön düzeltmek
Bu derste artık projende gerçek değişiklikler yaptırıyorsun. Önemli: küçük adımlarla başla, her diff’i oku, onay vermeden önce düşün.
1. Edit vs Write
Claude iki yolla dosyaya yazar:
| Tool | Ne zaman |
|---|---|
| Edit | Mevcut dosyaya küçük değişiklik (find + replace mantığı) |
| Write | Yeni dosya veya tamamen yeniden yazma |
Edit’in old/new gösteriminde diff’i renkli görürsün. Write’ta tüm yeni içeriği görürsün.
2. İlk değişiklik — küçük başla
@src/utils/logger.ts içinde `console.log` çağrılarını
`logger.info` ile değiştir. Test dosyalarına dokunma.
Claude muhtemelen şunu yapar:
Read src/utils/logger.tsEdittool çağrısı önerir — sen onaylarsın- Diff’i görür, onaylar veya reddedersin
3. Permission mode
İlk başlattığında Claude her tool’a izin ister. Bu konservatif moddur. /permissions ile esnetebilirsin:
| Mode | Davranış |
|---|---|
default | Her shell ve write işleminde sor |
acceptEdits | Edit/Write otomatik onay; Bash hâlâ sorulur |
bypassPermissions | Her şey otomatik (riskli — sadece izolasyonlu ortamda) |
Yeniyken default veya acceptEdits arasında kal; production repo’da asla bypassPermissions açma.
4. Büyük değişiklikleri parçala
❌ Yanlış:
Tüm REST API'yi GraphQL'e çevir.
✅ Doğru:
Önce sadece /users endpoint'ini GraphQL query'sine çevir.
Resolver'ı services/users.ts'i çağırsın. Mevcut REST endpoint'ini koru.
Küçük adımlar:
- Daha kolay review edilir
- Hata bulunduğunda geri almak kolay
- Claude’un context’i temiz kalır
5. Yön düzeltme
Bir adım kötü gittiyse:
Az önceki Edit'i geri al. logger.info yerine logger.debug
kullanılmasını istiyorum.
Claude diff’i tersine çevirip yeni yamayı önerir. Daha radikal geri alma için git kullan:
git diff # ne değişti?
git checkout -- file.ts # belirli dosyayı eski haline al
git stash # geçici olarak kenara koy
6. Doğrulama
Değişiklikten sonra mutlaka test çalıştır (veya Claude’a çalıştırt):
Şimdi testleri çalıştır. Kırılan varsa nedenini söyle ve düzelt.
Test yoksa manuel doğrulama komutunu (build, lint, dev server) çalıştır:
npm run lint && npm run build çalıştır, sonuçları paylaş.
Özet
- Edit/Write farkını gör, her diff’i oku
/permissionsile onay seviyesini ayarla- Büyük işleri küçük adımlara böl
- Yön düzeltme için Claude + git birlikte
- Her adımdan sonra doğrula
Sırada ne var?
Modül 3’e geçiyoruz: context’i kontrol etmek. Custom commands, MCP, GitHub — Claude’a daha fazla bilgi vermeden daha verimli çalıştırmanın yolları.