Git Versiyon Kontrol Sistemi – Başlangıç

gitBu yazımda en popüler versiyon kontrol sistemlerinden biri olan GIT ile ilgili aldığım notları paylaşacağım.

-Git daha verimli çalışma için daha önce oluşturulmuş ve değişiklik yapılmamış olan belgeleri yeniden kaydetmez. Bunun yerine daha önce kaydedilmiş olan belgeye link oluşturur. Bu özellik Git versiyon kontrol sistemini diğerlerinden ayıran en önemli farktır.

-Git’in hızlı çalışması birçok işlemi localde gerçekleştirmesi sayesinde mümkün olmaktadır.Bütün değişiklik tarihi bilgisayarınızda tutulduğu için işlemler çok hızlı yapılabilmektedir.Örneğin projenin geçmişi ile ilgili bilgilere erişmek istediğinizde git uzak sunucuya giderek herhangi bilgi çekme gereksinimi duymaz ve gerekli bilgileri zaten makinenizde barındırdığından anında size sunar. Git’in local bazlı çalışması sayesinde offline olduğunuz durumlarda diğer versiyon kontrol sistemlerinin aksine yapamayacağınız çok az şey oluyor.

-Git herhangi bir bilginin kendi kontrolü dışında değiştirildiğini anında tespit eden bir mekanizmaya sahiptir. Git’in kullandığı bu mekanizma “SHA-1 hash” olarak adlandırılmaktadır. Her bir belge ve projenin dosya yapısına karşılık gelen 40 karakterden oluşan bir string oluşturulmaktadır. Bu sayede git kendi bilgisi dışında yapılan değişiklikleri anında algılar.

 

-Git sayesinde işlemlerimizi daha cesurca gerçekleştirmemiz mümkün çünkü herşeyin kaydı tutuluyor ve istediğimiz zaman değişiklikleri geri alabiliriz. Kısaca elimizi korkak alıştırmaya gerek yoktur.

Önemli: Git kullanırken belgelerimiz 3 aşamadan birinde olur. Bunlar “committed”, “modified” veya “staged” aşamalarıdır.

Commited: Belgenin başarılı bir şekilde değiştirildiğini ve local veritabanına kaydedildiğini belirtir.

Modified: Belgeyi değiştirdiğiniz ancak henüz commit etmediğiniz aşamadır.,

Staged:   İki farklı belge üzerinde çalıştığımızı varsayalım. Bir belgede yapmayı planladığımız bütün değişiklikleri o gün içerisinde tamamlıyoruz diğer belgede başladığımız işi ise tam olarak tamamlayamadan commit yapmak istiyoruz. Bu durumda henüz tamamlanmamış olan belgemizi commit etmek yerine onu staged olarak işaretliyoruz ve commit yaptığımızda sadece işimizi tamamladığımız belgenin commit edilmesini sağlamış oluyoruz. Orijinal açıklama için buraya bakınız

-Git’de belgeleriniz 3 farklı dizin vardır bunlar orijinal isimleriyle şunlardır: Git directory, working directory ve staging area

 

Git Kurulumu (Linux – Ubuntu)

Git’in bağlı olduğu bazı kütüphanelerin kurulumunu gerçekleştirmek gerekiyor öncelikle. Bunlar curl, zlib, openssl, expat ve libiconv kütüphaneleridir. Bunun için şöyle bir komut yazıyoruz:

$ sudo apt-get install libcurl4-gnutls-dev libexpat1-dev gettext \libz-dev libssl-dev

Daha sonra aşağıdaki komutu yazarak git kurulumunu gerçekleştirmeniz gerekmektedir.

$ sudo apt-get install git-core

 

Git Konfigürasyon Ayarları

Aşağıdaki komutları kullanarak isminiz ve email adresiniz gibi bilgileri tanıtabilirsiniz.

$ git config –global user.name “Ferid Mövsümov”

$ git config –global user.email faridmovsumov@gmail.com

Burada –global kullanarak ayarlarınızın sistem bazında tanıtılmasını sağlamış olursunuz. Yani makinenizdeki bütün git işlemleri için bu ayarlar geçerli olacaktır.

Yorumlarınızı yazarken kullanılacak varsayılan editörü belirlemek için aşağıdaki komutu kullanabilirsiniz. Eğer bu ayarı belirtmezseniz sisteminizdeki varsayılan editör kullanılacaktır.

$ git config –global core.editor emacs

Versiyonlar arasındaki değişiklikleri incelemenizi sağlayan varsayılan diff aracını belirlemek için aşağıdaki komut kullanılabilir

$ git config –global merge.tool vimdiff

Sistemde tanımlı olan git ayarlarını görmek için aşağıdaki komutu kullanmanız gereklidir.

git config –list

 

Git Yardım Komutları

$ git help <verb>

$ git <verb> –help

$ man git-<verb>

 

KAYNAK: http://git-scm.com/book

8 Comments

    Git Versiyon Kontrol Sistemi – Başlangıç « Lé Blog

    […] oluşturulmuş ve değişiklik yapılmamış olan belgeleri yeniden kayde… Devamı için : Git Versiyon Kontrol Sistemi – Başlangıç Share :FacebookTwitterStumbleUponLinkedInLike this:LikeBe the first to like […]

    Git Versiyon Kontrol Sistemi – Başlangıç « kodluyorum

    […] oluşturulmuş ve değişiklik yapılmamış olan belgeleri yeniden kayde… Devamı için : Git Versiyon Kontrol Sistemi – Başlangıç Share this:TwitterFacebookBunu beğen:BeğenBunu beğenen ilk kişi […]

    Git Versiyon Kontrol Sistemi – Başlangıç « Gökhan Tunçkale | Blog

    […] oluşturulmuş ve değişiklik yapılmamış olan belgeleri yeniden kayde… Devamı için : Git Versiyon Kontrol Sistemi – Başlangıç ShareFacebookTwitterStumbleUponMoreTumblrRedditLinkedInDiggEmailPrintBunu beğen:BeğenBunu […]

    Git Versiyon Kontrol Sistemi – Başlangıç « Anil's Blog

    […] oluşturulmuş ve değişiklik yapılmamış olan belgeleri yeniden kayde… Devamı için : Git Versiyon Kontrol Sistemi – Başlangıç Bunu beğen:BeğenBunu beğenen ilk kişi […]

    Git Versiyon Kontrol Sistemi – Başlangıç « Murat SAÇ

    […] oluşturulmuş ve değişiklik yapılmamış olan belgeleri yeniden kayde… Devamı için : Git Versiyon Kontrol Sistemi – Başlangıç Share this:TwitterFacebookBunu beğen:BeğenBunu beğenen ilk kişi olun. […]

    Git Versiyon Kontrol Sistemi – Başlangıç | yusufozkay

    […] oluşturulmuş ve değişiklik yapılmamış olan belgeleri yeniden kayde… Devamı için : Git Versiyon Kontrol Sistemi – Başlangıç Share this:TwitterFacebookBunu beğen:BeğenBunu beğenen ilk kişi olun. Bu yazı Uncategorized […]

    İsimsiz

    Öncelikle yazı için teşekkür ederim.Git’in çalışma mantığını çok sade bir şekilde anlatmışsınız.Fakat makalenizde bir sorun gözüme çarptı. “Bu durumda henüz tamamlanmamış olan belgemizi commit etmek yerine onu staged olarak işaretliyoruz ve commit yaptığımızda sadece işimizi tamamladığımız belgenin commit edilmesini sağlamış oluyoruz.” Burada staged alanına aldığımız dosyanın commit edilmemiş dosya olduğunu yazmışsınız fakat git versiyon kontrol sisteminde bir commit yapıldığında sadece stage alanındaki dosyalar sunucu’ya gönderilir.

      Emre Macit

      Orada “stacked” demek istemişizdir, sürçme olabilir 🙂

İsimsiz için bir cevap yazın Cevabı iptal et