geri

Kalp dostu, stresten uzak tutan bir Git arayüzü: Tig

23/09/2013

Her yazıma, yazmayalı uzun zaman olmuş diyerek başlamak zorunda kalıyorum artık ne yazık ki. Son dört aydır neler yaptığımı ayrıntılarıyla anlatmayı çok istiyorum aslında (ne kadar merak ettiğiniz konusunda hiçbir fikrim yok) ama bunu ne zaman yapabileceğimi bilemiyorum. Önümüzdeki birkaç hafta, şehir değişimi de dahil olmak üzere, benim için yine büyük değişiklikleri barındırıyor. Bunun dışında efsanevi 4Primes'ı neden kapattık, neler kötü gitti, neler iyi gitti dürüstçe anlatacağım bir yazıyı da kaleme almak (lafın gelişi, klavye kullanıyorum) istiyorum. Tüm bu yazıların ne zaman yazılacağı sorusunun yanıtı ise henüz yok.

Bugünün derin mevzusuna dönecek olursak, bir süredir severek kullanmakta olduğum git arayüzü Tig'den bahsetmek istiyorum. Yaratıcı ismine aldanmayın; adı kısa, işlevi uzun bir araç kendileri. Daha önceki yazılarımı okuyanlar git arayüzü olarak SourceTree'yi severek kullandığımı hatırlayacaklardır. Benim gibi hemen tüm işlerini terminal üzerinden halleden biri için bu sıradışı bir durum. Çünkü elimin mouse'a her gidişini zaman kaybı kabul edenlerdenim ben de. İstanbul maceram sırasında VNGRS ekibinde pek çok geliştiricinin 10 parmak yazabildiğini(touch typing) ve hatta Das Keyboard kullandığını görünce aslında kod yazarken yavaş kaldığımı fark ettim. 3 ay kadar bir sürede 10 parmak yazmayı öğrendim (ama bu yazıyı Türkçe karakterler ile yazarken canım acıyor resmen). Yazma hızım dakikada 40 kelimenin üzerine çıkınca mouse'la yapılan işler bana iyice zulüm olmaya başladı. Terminalde kullanabileceğim güzel bir git arayüzü aradım ve Tig ile yollarımız kesişti.

Terminalden tig komutu ile başlattığımızda uygulama main view ile açılıyor. Aşağıda main view'dan bir ekran görüntüsü yer almakta. Göreceğiniz üzere her commit için birer satırlık özet bilgi veriliyor. En alttaki status satırında görünümün(view) adı, toplam kaç commit olduğu gibi bilgiler de mevcut.

Satırlar arasında j/k ya da yukarı ok/aşağı ok tuşları ile ilerleyebilirsiniz. Herhangi bir satırda enter tuşuna bastığınızda ekran ikiye bölünür ve main view altında diff view görünür duruma gelir. Aşağıda main view ve hemen altında diff view yer alan bir ekran görüntüsü mevcut. Diff görünümünde seçilen commit'e ait diff çok tatlı bir şekilde gösteriliyor. j/k tuşları ile diff görümünde yukarı aşağı hareket edebilir, tab tuşu ile görünümler arasında geçiş yapabilir (seçili olan görünümün sağ köşesinde beyaz bir bar vardır), yukarı ok/aşağı ok ile seçili commit'i kolayca değiştirerek diff'leri hızlıca görebilirsiniz.

t tuşuna bastığınızda deponuzun seçili commit anındaki halini gösteren bir tree view açılır. Bu görünümde enter tuşu ile dizinlerin içine girebilir ya da dosyaların içeriğini görüntüleyebilirsiniz. Bir üst dizine dönmek için , tuşunu kullanabilirsiniz. Dosya içeriğinde satır numalarını açıp kapatmak için . tuşu kullanılıyor. Main view'a dönmek için ise m tuşuna basmak yeterli.

B tuşu ile blame görünümüne geçiş yapabiliyorsunuz. Bu görünüme pek çok noktadan gitmek mümkün. Tek şart Tig'in dosya adı elde edebileceği bir durumda olmak. Aşağıda suçlu tespiti için ekran görüntüsü paylaşıyorum:)

l tuşuna basılarak açılan log view, main view'a kıyasla commit hakkında daha fazla bilgi veriyor.

Main view'da olduğa gibi yine enter tuşu ile içinde bulunulan commit için diff view açılabiliyor.

Belki en sık kullanılan view olan status görünümünü en sona bıraktım. S tuşu ile ulaşılan bu görünümde çalışma dizinindeki dosyaların durumunu görebilir; u tuşu ile bu dosyaları staging area'ya ekleyebilir, staging area'dan çıkartabilirsiniz.

Status görünümünde C tuşuna bastığınızda commit mesajı yazmanızı sağlamak üzere varsayılan editörününüz (benimki vim) açılır ve mesajı kaydettiğinizde staging area'daki değişiklikler commit edilir.

Uygulama kısayollarını bir anda öğrenmenin çok kolay olmadığının farkındayım. Ayrıca bahsetmediğim kısayollar ne yazık ki bahsedebildiklerimden daha fazla. Bu sebeple h tuşu ile açılan help view en büyük yardımcınız olacaktır. Tig kullanım kılavuzunu da en az bir kere okumanızı tavsiye ederim. y tuşu ile stash görünümüne ulaşabileceğinizi de hatırlatarak Tig kullanımında başarılar diliyorum. Yorumlarınızı her zaman ilgi ile beklemekteyim.

Follow me on Twitter

yorumlar Disqus aracılığıyla sunulmaktadır