Monday, 12 December 2011

Pro Tools 10 Çok Yavaş Açılıyorsa

Pro Tools açılırken takılıyorsa probleminiz dns ile ilgili olabilir.

Pro Tools 10'u çalıştırdık, bekle bekle açılmıyor. Bir yerlerden wireless'ı kapatın yazıyordu. Kapattık, hemen açıldı. En sonunda anladık ki problem bizim dns ayarlarından kaynaklanıyormuş.

Makinemizin dns ayarlarını google'ın dns ayarları (8.8.8.8 8.8.4.4) ile değiştirince Pro Tools hemen açıldı.

Eğer Pro Tools açılırken tıkanıyorsa probleminiz dns ayarları olabilir.

Volkan Özyılmaz

Saturday, 5 November 2011

Git ile Paylaşımlı Proje Yaratalım

Git ile paylaşımlı bir proje yaratmak için normal init komutunun yanına --bare ekliyoruz ve isminin sonuna '.git' eklemeyi unutmuyoruz. 


git init --bare proje_ismi.git


Eğer sunucu olarak kullanacağımız makinede ayrıca geliştirme yapacaksak dahi istemci tarafındaki gibi işlemleri yapmamız gerekiyor. Şimdi istemci tarafına projeyi çekelim. 


git clone /Users/gitrepos/proje_ismi.git


Komutu çalıştırdıktan sonra git size normal bir çıktılarının yanısıra bir uyarı mesajı da verecektir. 



Cloning into proje_ismi...
done.
warning: You appear to have cloned an empty repository.

Boş bir repository olduğunu söylüyor. Biz proje içine örnek bir dosya ekleyelim. 

cd proje_ismi
touch dosya1.txt

Bir dosya ekledik. Dosyayı açıp içine bir şeyler yazın. 

git add dosya1.txt
git commit dosya1.txt -m "Ilk Yorum"

İlk dosyamızı istemci tarafındaki repository'mize eklemiş olduk. Şimdi sunucu tarafına gönderelim. Normalde git push komutunu çalıştırdığımızda göndermesi gerekir. Fakat şuanda çalıştırırsak git bize hata bildirecektir. Çalıştırıp hatayı görmenizde bir sakınca yok. Hata, çalıştırdığımız branch'ın sunucu tarafında bulunmamasından kaynaklanıyor. Bu sorunu aşmak için bir kereye mahsus branch'ımızı tanıtmamız gerekli. Varsayılan olarak istemci tarafında master branch'ında çalışıyorsunuz. 

git push origin master

Şuanda sunucu tarafına 'master' isimli branch'ı eklemiş olduk. Ayrıca güncelleme işini de aradan çıkardık. Bundan sonra kullanacağımız komutlar pull ve push. Örneğin bir dosya daha yaratalım, güncelleyelim ve sunucu tarafına gönderelim. 

touch dosya2.txt

Dosyayı güncelleyin. 

git add dosya2.txt
git commit dosya2.txt -m "Ikinci Yorum"
git push

Sunucu tarafi güncellendi. Proje üzerinde çalışan diğer kişi de git ile clone ettikten sonra yaptığınız güncellemeyi kendi makinesine yansıtması için  

git pull

komutunu kullanabilir. git pull komutu arka alanda hem fetch işlemini hem de merge işlemini yapıyor. Eğer detaylı bir merge işlemine ihtiyacınız varsa işlemi iki adımda gerçekleştirebilirsiniz. 

Elinizde mevcutta bulunan git projesini de aynen bu hale getirebilirsiniz. 

git clone --bare -l /eski_yol/proje_ismi.git

Ayrıca apache server ile git kullanımına henüz ihtiyacımız olmadı ve dolayısı ile öğrenmedik ama öğrenirsek onu da buradan duyuracağım. 

Mutlu Kodlamalar ;)

Volkan Özyılmaz

Saturday, 22 October 2011

Bash ile Birçok Dosyanın İsmini Değiştirmek


Eğer bash kullanıyorsanız ve birçok dosyanın ismini bir komut ile değiştirmek istiyorsanız farklı farklı  ihtiyaçlarınız olabilir. Burada sadece bul/değiştir (find/replace) ile yapılabilecek tekniği göstermeye çalışacağım.

Bir kaç gün önce bir klasör altındaki bir çok dosyanın ismini değiştirmem gerekti. Gereklilik bul/değiştir (find/replace) gibi olsa çok hoş olurdu. Araştırmalarım sonucunda aşağıdaki gibi bir örneğe ulaştım.


for i in *; do j=`echo $i | sed 's/find/replace/g'`; mv "$i" "$j"; done

Kısım kısım ele alalım; 

for i in *;

Bu satır bulunduğunuz klasör altındaki tüm dosyalara işlemi yapacağınızı gösteriyor. Örneğin sadece txt uzantılı dosyalara işlem uygulayacaksanız

for i in *.txt; 

şeklinde olması gerekir. 

do j=`echo $i | sed 's/find/replace/g'`;

Aranacak ve yerine yapıştırılacak bilgiyi yukarıdaki satırda belirliyorsunuz. Satırdaki 'find' yazan yere aranacak yazıyı, 'replace' yazan yere de yerine yapıştırılacak yazıyı yazmanız gerekir. 

mv "$i" "$j"; done

Yukarıdaki satırda da kalsik 'mv' komutu kullanılarak eski dosya ismi ile yeni dosya ismi değiştirilmektedir. 

Sonuç olarak dikkat edilmesi gereken iki nokta var. Birincisi '*' karakterinin gerekiyorsa modifiye edilmesi, ikincisi ile aranacak ve yerine yapıştırılacak yazıların eklenmesi. 

Kendi örneğimden konuşacak olursam tüm dosyalarımın içindeki '_a' yazısını '_c' ile değiştirmem gerekiyordu. 

for i in *; do j=`echo $i | sed 's/_a/_c/g'`; mv "$i" "$j"; done

Yukarıdaki kullanım tam istediğim sonucu almama neden oldu. 

Değerli dosyalarınıza uygulamadan önce ya bir yedeğini alın ya da başka dosyalar üzerinde deneyerek gerçekten istediğiniz sonucu aldığınızdan emin olun ve sonra işlemi yapın. Sonra çok üzülmek olası ;) 

Volkan Özyılmaz

Sunday, 16 October 2011

GPG ile Vim'in Harika Birleşimi

Bir süre önce gpg isminde harika bir şifreleme sistemi kullanmaya başladım. Bu sistem verilerimizi bizim veya başkalarının bizim adımıza rahatça şifreleyebileceği fakat yalnızca bizim açabileceğimiz bir yapıya sahip.

Bir süredir bazı yazılarımı şifreleyip saklamayı düşünüyordum fakat bir sorun vardı, işin hammaliyesi büyüktü. Her seferinde dosyayı gpg ile açmam daha sonra istediğim değişiklikleri yaptıktan sonra tekrar şifrelemem gerekiyordu. Ardından şifresiz dosyayı silme işlemi de cabası (ki biliyorsunuz o dosyaya istenildiğinde silmiş olsanız dahi ulaşılabiliyor).

Yazılarının bazılarını vim editöründe yazan biri olarak harika bir çözüm buldum. Benim rahatsız olduğum bu hammaliye işlerini vim için ortadan kaldırmak mümkün. Tek yapmanız gereken

http://www.vim.org/scripts/script.php?script_id=3645

bu adrese gidip plugin'i indirmek ve kurmak. Adım adım kurulumu Mac OS X için yazıyorum.


  1. Spotlight'a Terminal yazarak bir adet terminal konsolu açın. 
  2. Eğer değilseniz

    cd ~/

    komutu ile ev (home) dizinine gidin. 
  3. Eğer daha önceden oluşturmadıysanız önce

    mkdir .vim

    komutu ile .vim klasörünü sonra

    mkdir .vim/plugin

    komutu ile plugin klasörünü oluşturun. 
  4. İndirdiğiniz gnupg.vim dosyasını (dosyanın Downloads klasöründe olduğunu varsayıyorum)

    cp ~/Downloads/gnupg.vim ~/.vim/plugin/

    komutu ile kopyalayın. 
  5. ~/.profile dosyanıza

    GPG_TTY=`tty`
    export GPG_TTY

    satırlarını ekleyin. 
Artık gpg ile vim kullanımınıza hazır. Aşağıdaki komutlar ile test edelim. 

touch test.txt.gpg
vim test.txt.gpg

İstediğiniz bilgileri dosyanın içine ekleyin. 

:wq

komutu ile vim'den çıkın. 

cat test.txt.gpg

komutu ile şifreli halini görebilirsiniz. 

Volkan Özyılmaz

Thursday, 18 August 2011

Hex Editor Olarak Vim (2011-08-18 Perşembe)

Vim ile dosyalara hex olarak bakmak isterseniz dosyayı açtıktan sonra

:%!xxd

komutunu çalıştırın. Eğer tekrardan text moda geri dönmek isterseniz

:%!xxd -r

komutunu çalıştırın.