Git ile birden fazla RSA key tanımlamak

Merhaba,

Github.com veya bitbucket.org üzerinde farklı farklı email adresleriyle oluşturduğunuz  projeleriniz olabilir ve tek bilgisayarda hepsine RSA key tanımlayarak çalışmak istiyor olabilirsininiz. Burada yapmamız gereken işlem hangi projenin hangi RSA key ile haberleşeceğini belirlemektir. Eğer bunu belirlemezsek sonradan eklediğimiz projelerde ilk eklenen projenin RSA keyi ile güvenli bağlantı kurmaya çalışır ve hata alırsınız.

Eğer 2. bir proje için RSA key tanımlamak istiyorsanız zaten daha önceden RSA key tanımlamayı öğrenmişsinizdir diye düşündüm. Yine de bilmeyenler bu linkteki adımları izleyerek kolayca RSA key oluşturabilirler.

İlk olarak RSA key dosyalarımızın bulunduğu dizine gidelim :

cd ~/.ssh

Şimdi bahsettiğim hangi projenin hangi RSA dosyasını kullanacağı bilgilerini tanımayacağımız ayar dosyamızı oluşturalım :

touch config

Şimdi bu dosyamızın içine şu ayarları ekleyelim :

# ilk projemizin ayarları.
Host github.com
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa

# ikinci projemiz
Host github-second-account
HostName github.com
User git
IdentityFile ~/.ssh/ikinci_projemizin_rsa_key_dosya_adi

Burada hangi dosyamızın hangi projeye ait olduğunu belirttik. IdentityFile alanında ilgili RSA dosyasının tam pathini veriyoruz. Host alanında bir maske oluşturuyoruz. Örneğin 2. projemizde github.com adresinde. Bu sebeple aynı yerlere bağlanıyorlar. O yüzden bağlanırken hangi RSA dosyasını alacağını bulmak için bir maske oluşturuyoruz ve farklı bir ad veriyoruz.

Maske şu şekilde kullanılıyor. 2. projeyi çekerken :

git clone git@github-second-account:user/project.git

Şeklinde kullanıyoruz ve proje çekildikten sonra RSA key aktif olmuş bir şekilde kullanmaya başlıyoruz. Afiyet olsun 🙂

 

 

 

linux toplu bul ve degistir (find and replace) islemi

Linuxta belirli dosyalar üzerinde find ve replace işlemi yapmak istiyorsak 2 komut kombinasyonu kullanarak bu işinizi halledebilirsiniz.

grep -l 'aratilacak_dizgi' * | xargs sed -e 's/aratilacak_dizgi/yeni_dizgi/' -i

sadece grep -l ‘aratilacak_dizgi’ ile içinde ‘aratilacak_dizgi’ olan dosyaları listeleyebilrsiniz. sed komutu ile de replace işlemini yapmış oluyoruz.

Umarım işinize yarar.

Windows komut satirindan mail gonderimi

Linux üzerinde bu yazıda anlattığımız komut satırı üzerinden mail gönderimi windows için şu şekilde yapılabilmekte.

Öncelikle bu linkten mailsend adlı programı indirin. https://code.google.com/p/mailsend/downloads/detail?name=mailsend1.17b12.exe

Daha sonra bu exe dosyasını belirli bir yere kaydedin. Ben d:/ dizinime kaydettim.

Komut satırı üzerinden örneğin aşağıdaki komut ile mail gönderiminizi yapabilirsiniz. (Ben burada örnek olması açısından SMTP üzerinden gönderim yaptım.)

 

d:/mailsend.exe -to [email protected] -from [email protected] -starttls -port 587 -auth -smtp mail.domain.com.tr -sub "mail basligi" -M "mail icerigi" -user [email protected] -pass ******

Bu işlem windows 7 de denenmmiştir. Ayrıca, projenin anasayfasında konuyla ilgili detaylara ve detaylı kullanımlarına ulaşabilirsiniz. https://code.google.com/p/mailsend/

Bunu Neden kullanayım?
Ben bu işlemi bir git reposu üzerinde master merge işlemi sornasında tüm arkadaşlarıma mail atmamı, otomatikleştirmek için kullandım. Sizin tabi ki farklı ihtiyaçlarınız da olabilir.

Umarım işinize yarar.

ubuntu’ya ruby kurulumu

Ruby kurulumunda 2 seçenek var. Biri RVM olmadan, biri RVM ile. ( RVM = Ruby Version Manager )

RVM olmadan kurulum

İlk olarak terminali açıyoruz. Ardından ruby 1.9.3 versiyonunu kuruyoruz.

sudo apt-get update
sudo apt-get install ruby1.9.3

Kurduktan sonra

ruby --version

diyerek kurulduğunu görmüş oluruz.

RVM ile kurulum

Eğer sisteminizde curl kurulu değilse ilk olarak curl kurunuz.

sudo apt-get install curl

Ardından şu işlemleri yapınız.

curl -L get.rvm.io | bash -s stable
source /usr/local/rvm/scripts/rvm

RVM için gerekli paketlerin kurulu olup olmadığına bakıyoruz, eğer gerekli paketler varsa kuruyoruz. Şu şekilde ;

rvm requirements

Son bir işlemimiz kalıyor;

rvm install 1.9.3