# Kod

> Dvina'ya bilgisayarınızdaki bir projede kod yazdırın, her değişikliği inceleyin, ardından sohbetten commit oluşturup pull request açın.

Dvina, notları, yazışmaları ve gerekçeleri göz önünde bulundurarak bilgisayarınızdaki projenizde kod yazar. Ne istediğinizi anlatır, yaptığı değişiklikleri inceler ve kodu kullanıma sunarsınız. Bunların hepsini, diğer işleriniz için de kullandığınız aynı uygulamada yaparsınız.

## Başlamadan önce

Kod, Mac, Windows ve Linux'ta Dvina masaüstü uygulamasının bir parçasıdır. Ayrı bir kurulum gerekmez. Dvina'nın en az bir bilgisayarda bulunması gerekir; diğer tüm cihazlardan işi başlatabilir ve takip edebilirsiniz.

Masaüstü uygulamasını edinmek için [Dvina'yı indirme ve yükleme](/docs/use-dvina/get-started/install) sayfasına bakın.

## Bir proje açın

Proje, bilgisayarınızdaki bir klasördür: bir kod deposu veya sıradan bir klasör olabilir.

1. Masaüstü uygulamasında Dock'u açın ve proje satırını (**Projeler**) seçin.
2. Bir klasör veya kod deposu seçmek için **Aç…**, bu bilgisayarda yeni bir klasör oluşturmak için **Yeni Proje…** seçeneğini seçin.

Yeni bir proje oluştururken **Git deposu oluştur** seçeneğini açın. Böylece her değişikliğin geçmişi tutulur ve Dvina'nın düzenlemeleri geri alınabilir.

Sohbet, seçtiğiniz projede çalışır. Bir kod projesinde Dock, projenin dalını da gösterir.

## Yapılacak işi anlatın

Ne istediğinizi anlatın; örneğin, "CSV dışa aktarımında doğru tarihlerin kullanılmasını sağla". Dvina bunu bilgisayarınızda bir görev olarak yürütür. Bu sırada konuşmaya devam edebilir veya başka görevler başlatabilirsiniz. Birden fazla görev aynı depoda çalışabilir ve hangisinin önce commit oluşturacağına kendi aralarında karar verebilir.

Dvina, kod yazmadan önce projeyi çevresindeki bağlamla birlikte okur: geçmiş sohbetlerinizi ve dosyalarınızı arar, böylece gerekçeleri de hesaba katar. Ayrıca projenizdeki AGENTS.md veya CLAUDE.md dosyasına da uyar.

## Değişiklikleri inceleyin

Her görevin yanıtı, yaptığı değişikliklerle birlikte, görevin adını taşıyan ve **İncelemeye hazır** yazan bir kartta gelir.

- **Nelerin değiştiğini görün:** Her dosyadaki değişiklikleri yan panelde görmek için **Değişiklikler** seçeneğini seçin. **Dosyalar** ile projeye göz atabilirsiniz.
- **Bir adımı geri alın:** Dosyaları değiştiren bir yanıtın altında, kaç dosyanın değiştiğini belirten satırı seçin. Ardından **Geri al** seçeneğini seçip **Bu adım geri alınsın mı?** sorusunu onaylayın. Dosyalar o adımdan önceki hâline döner; sonradan yapılan değişiklikler korunur.

## Commit oluşturun ve pull request açın

1. Görevin kartında **Commit oluştur** seçeneğini seçin.
2. **Değişiklikler için commit oluştur** ekranı, dalınızda commit'e dahil edilecek dosyaları, önerilen bir **Başlık** ve **Mesaj** ile listeler. **Commit oluştur** seçeneğini seçin. Hiçbir şey uzak depoya gönderilmez.
3. Pull request açmak için **Gönder ve PR oluştur** seçeneğini seçin. Dvina önce mevcut dalı uzak depoya gönderir, ardından pull request açar. Commit'e dahil edilmemiş dosyalar eklenmez.

Pull request, kendi Git oturumunuz üzerinden açılır. Dvina bunu GitHub veya GitLab'da açar; diğer barındırma hizmetlerinde ise hizmetin kendi yeni pull request sayfası tarayıcınızda açılır. İşlem tamamlandığında **PR'ı görüntüle** seçeneğini seçin.

## Onaylar

Derleme ve testler doğrudan çalışır. Dosya silme, uzak depoya gönderme, veritabanı değişiklikleri, dağıtım ve gizli bilgilere erişen tüm işlemler onayınızı bekler. Kartta neden onay gerektiği belirtilir; örneğin **Bu komut çalıştırılsın mı?** sorusuyla birlikte **Dosyaları siler** veya **Veritabanında değişiklik yapar** açıklaması gösterilir. Siz de **İzin ver** veya **Reddet** seçeneğini seçersiniz. Yöneticiniz hangi işlemlerin her zaman onay isteyeceğini ayarlayabilir.

> [!IMPORTANT]
> Siz onay vermeden hiçbir şey uzak depoya gönderilmez. Projeniz bilgisayarınızdaki bir klasördür ve Git sayesinde Dvina'nın yaptığı her değişiklik geri alınabilir.

## Simülatörde veya emülatörde test edin

Masaüstü uygulamasında Dvina, uygulamanızı bu bilgisayarda kullanıcılarınızın kullanacağı şekilde deneyebilir: tarayıcıda, Mac'te iOS Simülatörü'nde ya da Mac, Windows veya Linux'ta Android Emülatörü'nde.

1. Dock'u açın ve **Cihaz** olarak işaretlenmiş satırı seçin.
2. **Bu cihaz** altında **Tarayıcı**, **iOS Simülatörü** veya **Android Emülatörü** seçeneğini seçin.

Bölme, yan panelde açılır. Kapalı olan bir simülatör, açtığınızda başlatılır. Başka bir simülatör kullanmak için bölmenin üst kısmındaki **Cihaz seç** seçeneğini seçin. Her cihazın sistemi ve **Çalışıyor** veya **Kapalı** durumu gösterilir.

Tarayıcıyı göstermek veya gizlemek için Mac'te <kbd>⌘</kbd> <kbd>⇧</kbd> <kbd>B</kbd>, Windows ve Linux'ta <kbd>Ctrl</kbd> <kbd>Shift</kbd> <kbd>B</kbd> tuşlarına basın. Dvina, bakmadığınız bir bölmede çalışırken **Cihaz** satırında bir nokta görünür.

### Dvina'nın bir cihazı kullanmasına izin verin

Dvina bir simülatörü veya emülatörü ilk kez kullanırken, örneğin **Dvina'nın iPhone 17 Pro'yu kullanmasına izin verilsin mi?** diye sorar. Dvina cihazın ekranını görebildiği için cihazda gerçek hesaplarınıza giriş yapmayın. **İzin ver** veya **Reddet** seçeneğini seçin. Cihaz yanıtınızı hatırlar; böylece başka bir sohbette yeniden sorulmaz. İzin verene kadar bölmede **Dvina'nın kullanmasına izin ver** seçeneği sunulur.

Dvina çalışırken bölmede **Dvina bu cihazı kullanıyor** yazısı görünür ve sohbette cihaz canlı olarak gösterilir. Daha büyük görmek için **Büyük izle** seçeneğini seçin. Cihazdaki gönderme, ödeme ve silme işlemleri her seferinde onayınızı bekler.

Cihazı kendiniz kullanmak için **Kontrolü devral** seçeneğini seçin. Dokunuşlarınız ve tuş girişleriniz cihaza iletilir. **Ana ekran** düğmesine, Android'de ayrıca **Geri** ve **Son uygulamalar** düğmelerine basabilirsiniz. İşiniz bittiğinde **Kontrolü geri ver** seçeneğini seçin; Dvina çalışmaya devam eder.

### iOS Simülatörü'nü kurun

iOS Simülatörü kurulu değilse ilgili satır, **iOS Simülatörü'nü kur** kontrol listesini açar. Her adım, başka bir yerde tamamlamış olsanız bile, tamamlandığında otomatik olarak işaretlenir.

1. **Xcode'u yükleyin:** **App Store'u aç** seçeneğini seçin. Xcode ücretsizdir ve yaklaşık 7 GB boyutundadır; yükleme tamamlandığında bir kez açın.
2. **Xcode'u seçin:** **Komutu kopyala** seçeneğini seçin ve komutu Terminal'de çalıştırın. Komut parolanızı ister; bu nedenle Dvina komutu asla sizin yerinize çalıştırmaz.
3. **iOS simülatörünü ekleyin:** Xcode'da Ayarlar › Bileşenler bölümüne gidip iOS'u indirin veya komutu Terminal'de çalıştırın.
4. **Bir cihaz oluşturun:** **iPhone oluştur** seçeneğini seçin. Hiçbir şey indirilmez.

### Android Emülatörü'nü kurun

Android Emülatörü kurulu değilse ilgili satır, **Android emülatörünü kur** kontrol listesini açar.

1. **Android Studio'yu yükleyin:** **Android Studio'yu indir** seçeneğini seçin. Bu, emülatörün çalışması için gereken bileşenleri yükler; yükleme tamamlandığında bir kez açın.
2. **Emülatörü ve platform araçlarını ekleyin:** Komutu bir terminalde çalıştırın veya bunları Android Studio › SDK Manager bölümünden ekleyin.
3. **Donanım hızlandırmayı açın:** Windows ve Linux'ta komutu kendiniz çalıştırın; çünkü parolanız veya yönetici yetkisi gerekir. Ardından Linux'ta oturumu kapatıp yeniden açın, Windows'ta ise bilgisayarı yeniden başlatın. Mac'te bu adımda bir şey yapmanız gerekmez.
4. **Bir sistem imajı ekleyin:** Komutu bir terminalde çalıştırın veya Android Studio › SDK Manager bölümünden bir imaj ekleyin. İndirme boyutu büyüktür.
5. **Bir emülatör oluşturun:** **Emülatör oluştur** seçeneğini seçin. Hiçbir şey indirilmez.

Yöneticiniz simülatörleri kapattıysa satırlarda **Yöneticiniz tarafından kapatıldı** yazısı görünür.

## Her yerden çalışın

Telefonunuzdan veya web üzerinden sohbetinizde yapılmasını istediğiniz işi belirtin. Dvina, bilgisayarınızdaki projede bu iş üzerinde çalışır; değişiklikler incelemenizi bekler. Bilgisayarınızın açık ve Dvina'nın çalışır durumda olması gerekir.

## Ne zaman kullanılır

- Gerçek bir yazılım üzerinde çalışıyor ve tüm geçmişin elinizin altında olmasını istiyorsanız: notlar, kararlar ve geçen ayki yazışmalar.
- Masanızdan uzaktayken bir düzeltmenin yapılmasını istiyorsanız.
- Birden fazla değişiklik üzerinde aynı anda çalışılmasını ve her birinin incelemeye hazır olmasını istiyorsanız.

## İpuçları

- **Çalışma kurallarınızı yazın.** Nasıl çalıştığınızı AGENTS.md veya CLAUDE.md dosyasına yazın; Dvina bunlara uyar.
- **Telefonda test edin.** Bir uygulama mı geliştiriyorsunuz? Dvina, uygulamanızı bir iPhone simülatöründe veya Android emülatöründe, kullanıcılarınızın yapacağı gibi dokunarak test edebilir. [Simülatörde veya emülatörde test etme](#test-on-a-simulator-or-emulator) bölümüne bakın.
- **Geliştirici değil misiniz?** Çalışan uygulamalar ve sayfalar için bunun yerine [Oluştur](/docs/use-dvina/features/create) özelliğini kullanın.

## İlgili konular

- [Projeler](/docs/use-dvina/features/projects)
- [Görevler](/docs/use-dvina/features/tasks)
- [Bilgisayar Kullanımı](/docs/use-dvina/features/computer-use)
- [Kurulum](/docs/use-dvina/get-started/install)
