• Forum vBulletin altyapısından Xenforo altyapısına geçirildi, bu sebeple eski şifreleriniz ile foruma giriş yapamayacaksınız, parolamı unuttum adımından mailiniz ile şifre sıfırlayarak giriş yapabilirsiniz.

    Üyeliklerinde geçerli bir mail adresi olmadığı için sıfırlama yapamayacak kullanıcılar forum kullanıcı adlarını ve yeni şifrelerini yazarak info@maxigame.org adresine şifre sıfırlamak istediklerine dair bir mail göndersinler şifrelerini sıfırlayıp mail adreslerini güncelleyeceğiz. Şifreniz sıfırlandıktan sonra foruma giriş yapıp tekrar istediğiniz gibi değiştirebilirsiniz.

Git Versiyon Kontrol Sistemi, Getirdiği Yenilikler, Avantajları ve Dezatanvajları

CottonCandy

Atlas Evren
Aileden
Aktiflik
K.Tarihi
26 Tem 2009
Mesajlar
1,087
Puanı
472
Konum
M.K.ATATÜRK
X4Xbqo.gif




Sürüm Kontrol Sistemi Nedir ?


Dosyalar üzerinde yapılan tüm değişiklikleri kaydedip versiyonlar oluşturan ve daha sonra istenilen versiyona geri dönebilmeye olanak sağlayan bir sistemdir. Bu sistem neredeyse tüm dosya türlerinde kullanılabilir. GIT,Dağıtık Versiyon Kontrol Sistemidir. Bu da demek oluyor ki dosyalarınız tek bir sunucu üzerinde değil birden çok sunucu üzerinde tutulur.

X4XbLo.png



Neden Versiyon Kontrol Sistemi Kullanmalıyız ?


Birden fazla kişinin çalıştığı projelerde kodların yönetimi oldukca zor ve karmaşık olabilir. Ftp gibi bir yöntemle yaşamak kolay gelebilir ancak oldukça kullanışsız ve risklidir. Yapacağınız her işlem öncesi kodlarınızın bir yedeğini almak istediğinizi düşünün. Bu işlemi Versiyon Kontrol Sistemi olmadan yapmak tam bir işkence haline gelir. Bu sebeple bir topluluk ile veya bireysel olarak kaliteli kod geliştirmek, temiz bir projeye sahip olmak gibi sebeplerden ötürü Versiyon Kontrol Sistemi kullanmamız gerekir.


Dağıtık Versiyon Kontrol Sistemi


Öncelikle Merkezi Versiyon Kontrol Sistemine birkaç cümle ile değinelim. Bu tür bir sistemde tek depo(repository) bulunur ve birden çok kullanıcı vardır.
Dağıtık Versiyon Kontrol Sistemlerinde ise birden fazla yerel depo(local repository) ve birçok kullanıcı vardır. Bunun yanında birde uzak depo(remote repository) vardır.


GIT’in Avantajları ve Yenilikçi Yönleri



  • Oldukça hızlıdır. Çünkü birçok işlem lokal de gerçekleşir. Tüm değişiklikler lokal bilgisayarımızda tutulduğundan dolayı uzak sunucuyla hiçbir bağlantı kurmadan hızlı bir şekilde işlemleri gerçekleştirebiliyoruz. (Şekil-2)
  • Lokal branching sağlar.
  • En büyük farkı Merkezi değil Dağıtık olmasıdır.Bundan dolayı repoya sahip olan her bilgisayarda proje geçmişi bütünüyle saklanır. (Şekil -3)
  • Disk alanını verimli kullanır.
  • Diğer çoğu versiyon kontrol sistemlerinin aksine Git offline çalışır ve internete ihtiyaç duymadan geliştirme imkanı sunar.
  • Yapılan işlemler sırasında verimi kaybedeceğim korkusunu asla yaşamazsınız. Git neredeyse herşeyin kaydını tutar ve anında istediğimiz datalara ulaşmamızı sağlar.
  • Branch’lar üzerinde etkili bir denetim ve merge imkanı sunar. Conflict oluşma riski oldukça azdır.
  • Satır satır değişiklik yapma imkanı sunar.
  • Yeni kavramlara çık olduğunuz takdirde öğrenmesi kolaydır.
  • Temel olarak bu maddeleri diğer sürüm kontrol sistemleri ile karşılaştırdığınızda öne çıkan noktalar olduğunu göreceksiniz.
6nXDPW.png



WYQXkL.png

GIT Dezavantajları


Aslında konuya dezavantaj demek pek doğru bir yaklaşım değil. Başlangıçta dezatantaj olarak görülebilecek şeylerin bir süre sonra önemsiz bir hal aldığı ve GIT’in proje geliştirme ortamının vazgeçilmez bir parçası olduğunu göreceksiniz. Peki nedir ilk bakışta dezavantaj olarak sayılabilecek durumlar ?


– Öğrenmesinin zor olduğundan yakınan bir kesim yok değil. Yaklaşım diğer kontrol sistemlerine göre farklı ve karmaşık olabilir. Ancak ilk adımı atana kadar sürüyor bu karmaşa. Bu konuda dökümanlar da günden güne artıyor ve aranılan soruların cevabına kısa sürede ulaşılabiliyor.


– Yine kurulumu konusunda sorunlar yaşayabilirsiniz.


– İşlemlerinizi yaparken karşınıza çıkan hata mesajları ilk bakışta bir anlam ifade etmiyor olabilir.


GIT’in İşleyiş Biçimi

  1. Dosyalarınız üzerinde değişiklik yapılır.
  2. Dosyaları hazırlık alanına eklenir.
  3. Hazırlık alanındaki son halleri alınıp Git klasöründe kalıcı olarak depolanır.


Bu işleyiş biçimini aşağıda görebilirsiniz.(Şekil-4)

PMr7QN.png


Temel Git Komutları


Öncelikle GIT’i çeşitli GUI’lar aracılığı ile komut yazmadan kullanabileceğinizi belirteyim. Bunun GUI’ı şuradan edinebilirsiniz : http://git-scm.com/downloads/guis . Ancak önerim yaptığınız şeyin ne olduğunu bilmeniz ve GIT’i terminalde komut satırlarıyla öğrenmeniz. Bunun için temel olarak detaya inmeden bir kaç komut listeleyeceğim:


– git status : Dosyaların o anki durumunu gösterir. Yapılan tüm değişiklikleri gösterir.


– git add : Dosyaları commit e hazırlamanızı sağlar.


– git commit : Yapılan değişiklikleri bir versiyon olarak kaydeder.


– git push : Dosyaları uzak repo’ya göndermenizi sağlar.


– git pull : Uzak repo’daki tüm güncellemeleri lokal repo’nuza çeker.


– git rm : Dosya silmenizi sağlar.


– git checkout : Kullanıma bağlı olarak branch’lar arasında geçiş yapmanızı sağlar veya izlemeye alınmamış dosyaları eski haline göndürmenizi sağlar.


– git branch : Varolan branch’ları listeler. Yeni branch oluşturmanızı sağlar.


– git merge : Branch’ları birleştirmeyi sağlar.


– git reset : İstenilen versiyona dönmeyi sağlar.


– git log : Geçmiş commitleri gösterir.


– git cherry-pick : Bir branch’daki commit i başka bir branch’a kopyalamanızı sağlar.


Daha pek çok komut’un olduğu bir sistemdir GIT. Komutların fazlalığı sizi korkutmasın, kısa sürede alışıyorsunuz.


GIT Kurulumu

Linux Kurulumu için :


apt-get install git


komutu ile kurulumu kolayca yapabilirsiniz.


Mac Kurulumu için :


http://code.google.com/p/git-osx-installer adresinden installer ı indirip kurabilirsiniz.


Config Ayarları


Basit bir şekilde konsol yardımı ile email ve name bilgilerini set ediyoruz.


git config –global user.name <isim>
git config –global user.email <email>


–global komutunu kullandığınızda bu işlemi bir kez yapmanız yeterlidir. Farklı projelerde bu bilgileri değiştirmek isterseniz proje dizininde –global özelliğini kullanmadan işlemi yapmanız yeterli.


Ayarlarınız gözden geçirmek isterseniz git config –list komutunu çalıştırın.


Windows Kurulumu için :


http://msysgit.github.io/ adresinden dosyayı indirip kurabilirsiniz.


Bazı Popüler GIT Servisleri


– https://github.com/ Free plan ‘da sınırsız sayıda public repo oluşturabilirsiniz. Ancak private repo için ücret ödemeniz gerekiyor


– https://bitbucket.org/ Favorilerimden bitbucket’da ise sınırsız olarak private ve public repo oluşturabiliyorsunuz.






( Alıntı )
 
Geri
Üst