Git Öğreniyorum -2

Daha önce Sürüm Kontrol Sistemi Git adlı bir makale yazmıştım, öğrenme sürecim devam ediyor. Git kullanırken komut satırını kullanıyoruz. MacOs’da Terminal’e denk geliyor. Bu nedenle genel Terminal komutlarınıda bilmekte yarar var. Benim gibi mac terminaline yabancı biri iseniz(aslında linux komut satırı ile benzer kodlar) aşağıdaki basit komutları bilmenizde yarar var.

Terminal giriş görünümü yukarıdaki gibidir. (Renklere takılmayın bu benim seçimim)

ls (list files)

Çalıştığımız klasörün içeriğini göstermek için kullanılır. Windows’taki dir ile aynı anlamdadır.

Sonuç aşağıdaki gibi olacaktır

ls aFolder    another.txt    bilgilendirme.txt   deneme.html

cd (Change Directory)

Bu komut ile dosyalar arası geçiş için kullanırız. Mesela image klasörüne geçmek için

cd images

Tek seviyede değil birden fazla seviyede geçişte yapabiliriz.

cd images/icons/ust

Bir alt klasöre inmek için

cd ..

Kök dizinine(root) inmek için ise

cd

yazmak yeterlidir. Ufak bir ipucu klasör isimlerinin uzun olması durumunda akılda tutmak zor oluyor. Klasör veya dosya isminin başında bir kaç karakter yazdıktan sonra tab tuşuna basarak gerisini tamamlayabilirsiniz.

mkdir (Make Directory)

Yeni klasör oluşturmak için kullanıyoruz. Mac ve Windows’ta kullanımı aynıdır.

mkdir yeniKlasor

rm (remove)

Dosya ve klasörleri silmek için kullanılır. Silme işlemlerinde her zaman dikkatli olmak lazım.

rm deneme.html rm images_klasoru

cp (copy) ve mv (move)

Çok basit bir kullanımı vardır. İlk parametre kopyalanacak dosyayı ikinci parametre ise hedefi gösterir.

cp deneme.html ~/dosya/deneme.html

Eğer taşımak istiyorsanız, aynı şekilde kullanabiliriz.

mv deneme.html /dosya/deneme.html

mv komutu dosya ismini değiştirmek içinde kullanılabilir.

mv deneme.html /dosya/test.html

deneme.html dosyası ismi test.html olarak değiştirilip taşınmıştır.

clear

Terminal ekranını temizlemek için kullanılır.

Dosya Açmak

Komut satırlarından harici programlarda da açabiliyoruz veya kendi içinde açabiliyoruz.

Mesela MacOs için ilgili klasörde iken

nano deneme.html

komutu deneme.html dosyamızı nano editöründe açmamızı sağlayacaktır.

exit

Eğer uzak dosya yönetimi ile çalışıyorsanız. Kurduğunuz bağlantıyı sonlandırır. exit komutu ile Terminalide kapatmak mümkün. Terminal - Preferences.. - Settings - Shell oradanda “Close the Window” işaretleyerek exit komutu ile hem bağlantıyı hemde pencereyi kapatabiliriz.

Benim ihtiyaç duyduğum komutlar bunlar tüm liste için http://ss64.com/osx/ sitesineden yardım alabilirsiniz.

Git Kullanırken Öğrendiğim İpuçları

Yukarıda genel komutları anlattım, aşağıda ise kullandıkça gördüğüm komutları ve ipuçlarını paylaşacağım.

İki dosya arasındaki farkı görmek

Bir branchdeki veya bir dosya üzerindeki değişiklikleri görmek için branchde iken

$git log

yazarız bu komut bize

commit f491239170cb1463c7c3cd970862d6de636ba787 Author: Matt McCutchen <matt@mattmccutchen.net> date:   Thu Aug 14 13:37:41 2008 -0400 git format-patch documentation: clarify what --cover-letter does commit 7950659dc9ef7f2b50b18010622299c508bfdfc3 Author: Eric Raible <raible@gmail.com> date:   Thu Aug 14 10:12:54 2008 -0700 bash completion: 'git apply' should use 'fix' not 'strip' Bring completion up to date with the man page. 

gibi bir sonuç döndürür. O dosya veya o branch üzerinde yapılan tüm değişiklikler hakkında bilgileri içeren bir listedir bu. Bu listede commit … ile başlayan satırda verilen numara yapılan ve gönderilen her iş için farklıdır biz bu sözdizimini kullanarak iki farklı gönderi arasındaki farkı bulabiliriz.

$git diff f491239170cb1463c7c3cd970862d6de636ba787 7950659dc9ef7f2b50b18010622299c508bfdfc3  Html/index.html

İki farklı branchdeki HTML/index.html dosyasındaki farklılıkları gösterir yukarıdaki kod. Farkları renkli görmek için --color parametresini kullanabiliriz.

$git diff --color  d76192b2c7a61d2aea62c7aec21e14cda72f9e32 fe0dba7b841e86b095d2aefbd6bd755a0d9d1e90  Html/index.html 

Eklenenleri yeşil, çıkarılanları kırmızı renkte gösterecektir. Ayrımı görmek için renkler güzel oluyor.

Dallanma (Brach) Silmek

git branch -d: Yanlışlıkla açtığımız branchlerı silmek için

$git branch -d branch_ismi

Kısayol kullanmak

Git kullanırken aynı kodları tekrar tekrar çok kullanıyoruz. Bu komutları kısaltarak daha hızlı kod yazabilme imkanı sağlıyor bize komut sistemi.

git config dosyasına kısayolllarımızı ekleyebiliyoruz. git cofig ile ilgili ayrıntılı bilgiyi http://tybarts.wordpress.com/2011/05/07/git-global-config-dosyasini-ayarlamak/ bağlantısından edinebilirsiniz.

Global congif dosyasına eklemek için

$git config --global alias.ci commit

ci kısaltma commit normali. Eğer projeye özgü kısayollar oluşturmak için

$git config alias.ci commit

--global parametresini kaldırmamız yeterli olacaktır. git config dosyasını görmek için

$git config --edit

yazmamız yeterli burada eklediğimiz kısayolları görebiliriz. Benim listem aşağıdaki gibi.

[alias] st = status br = branch co = checkout ci = commit

Siz bu listeyi kendinize göre düzenleyebilirsiniz.

Git için kaynaklar

http://sixrevisions.com/resources/git-tutorials-beginners/ bu bağlantıda Git kaynakları listelenmiş. Git’in güzel yanlarında birisi öğrenmek için kaynağın bol olması.

Başka Branch’den dosya almak

$git checkout branch_adi dosya_adi

Benzer bir şekilde branchde yaptığımız değişikliği geri almak için master’dan dosyayı alabiliriz.

$git checkout master dosya_adi

Değişen dosya isimleri

Çalıştığımız branchde değişiklik yaptığımız dosyaları görmek için

$git diff master --name-only

kodunu kullanıyoruz.

Bana üşenmeyip bunları ve aklımda kalmayan bir çok bilgiyi öğreten Onur Yerlikaya'ya şükranlarımı sunarım. Gitmeyeydin Git daha kolay olacaadı. :D

Kalın sağlıcakla

Kaynaklar

Read more

gemini ile oluşturulmuştur :)

Lokalde tarayıcı geliştirme araçları üzerinden network isteklerini değiştirmek

FE geliştiriciler olarak hayatımız network istekleri(request) ve BE'den gelen dönen cevaplarla(response) geçiyor. Kendi bilgisayarımızda çalışırken bu istekleri değiştirme ihtiyacı olduğunda mock server kurmak veya çeşitli kütüphanelerle bu işi yapıyordum. Mock işini tarayıcı üzerinden yapmaya başlayalı çok rahatladım. Süper kolaylık sağlayan bir özellik. Genel kullanım alanları * BE

By Fatih Hayrioğlu
CSS'de lightdark() fonksiyonuyla kolayca koyu / açık mod yazımı

CSS'de lightdark() fonksiyonuyla kolayca koyu / açık mod yazımı

Bir önceki yazımda bahsettiğim gibi CSS'in yeni özelliklerinin bazıları çığır açan özellikler, bazıları kulllanıcı deneyimini iyileştirme yönünde özellikler bazıları da lightdark() fonksiyonu gibi yazım kolaylığı sağlayan özellikler. lightdark() fonksiyonu mevcut uyumlu web yazımındaki büyük sorun olan aşağıdaki kullanımı daha anlaşılır ve düzenli hale getirmeye yarıyor. :root { color-scheme:

By Fatih Hayrioğlu
Tarayıcı geliştirici araçlarında yakınlaştırma ve uzaklaştırma yapmak

Tarayıcı geliştirici araçlarında yakınlaştırma ve uzaklaştırma yapmak

Yaşlandıkça böyle ihtiyaçlar doğuyor galiba. Belki ihtiyacı olan olur diye buraya not edeyim. Chrome Dev Tools gibi araçlarda başlangıçtaki görünüm küçük kalabiliyor. Benim için küçük mesela :) Yazı boyutlarını büyütmek için Cmd + +  and  Cmd + - (Windows'ta Cmd yerine Ctrl kullanın). Ancak bu kısayol İngilizce klavye için Türkçe klavyelerde bunu yapmak

By Fatih Hayrioğlu