osa1 github gitlab twitter cv rss

Dropbox ve symlink ile çalışma ortamı senkronizasyonu

March 5, 2011 - Tagged as: tr.

Beni çok uğraştırdı, belki aynı şey için uğraşanlar vardır, bir süredir iki bilgisayar kullanıyorum(okulda dizüstü bilgisayar, evde masaüstü) ve genelde çalışmalarımın çoğunu okulda yaptığımdan, dosyalarım dizüstü bilgisayarımda bulunuyor ve çok dağınık olduğumdan, bu dosyalar çoğu zaman 5-6 farklı klasörün içinde bir yerlerde bulunuyor.

Tartıştığımız şu feed’e de bakabilirsiniz. İlgilenen herkese teşekkürler

Dropbox senkronizasyon için mükemmel. Son derece basit, sadece tek iş yapıyor ve süper yapıyor: tek bir klasörü senkronize etmek. Hiçbir ayar yok. Hesap alıp programı kuruyorsunuz, gerekli klasörü gösteriyorsunuz(ya da kendisi oluşturuyor), ve gerisini dropbox hallediyor. İki bilgisayar da açıkken, anlık olarak senkronize yapabiliyor.

Fakat dropbox’ın sorunu, birden fazla klasör seçemiyorsunuz. Örneğin benim durumumda, masaüstü klasörüm, dökümanlarımın(kitaplar vs.) bulunduğu klasör, eclipseworkspace, ve birkaç klasör daha gerekliydi ve dropbox ile bunu çözememiştim. Çözüm symlinkmis.

Çok basit bir çözüm ve tüm problemi çözüyor. Örneğin benim durmumda, senkronize etmek istediğim tüm klasörleri dropbox klasörünün altına linkledim. Şu şekil:

ln -s ~/Desktop ~/Dropbox/Desktop
ln -s ~/Documents ~/Dropbox/Documents
ln -s ~/.vimrc ~/Dropbox/.vimrc
ln -s ~/.vim ~/Dropbox/.vim	
...

İlk bilgisayardan bu şekilde gerekli klasörler ve dosyaları bağladıktan sonra ikinci bilgisayardan senkronizasyona başlamadan önce bu adımları uygulamak gerek. Ya da tüm senkronizasyon bittikten sonra. Burda ln -s komutunun ilk parametresi kaynak, yani eğer senkronizasyon yaptınız, sonra onu Desktop klasörüne bağlamak istiyorsanız ln -s ~/Dropbox/Desktop ~/Desktop yapmanız gerekir. Tek detay bu. Daha pratik bir yol yok(alternatifler için yukarıda bahsettiğim feed’e bakabilirsiniz).

Şu anda bu çözümde benim dikkatimi çeken tek bir problem var, senkronize etmek istemediğimiz dosya/formatları belirleyemiyoruz. .gitignore gibi bir .dropboxignore dosyası olsa mesela, ona göre istenmeyen doslayı senkronize etmese süper olurdu. Yoksa bir sürü .pyc, .o, .class dosyası senkronize edeceğim her gün.