Merhaba arkadaşlar, bu makaleyle birlikte birkaç makaleden oluşacak yeni bir yazı dizisine başlamış bulunuyorum. Bu yazıda temel olarak GIT sistemini tanıyacağız ve birkaç temel soruya cevap arayacağız. Ardından gelecek konularda daha derine girerek bir konu başlığı seçip ona özel detaylı incelemeler yapacağız. Hemen başlayalım..
Git Nedir ?
Kısa tanımıyla Git bir Versiyon Kontrol Sistemi‘dir. Uzunca bir tanım isterseniz; yazılım geliştirirken yaptığımız değişikliklerin kim tarafından yapıldığının, ne zaman yapıldığının, hangi satırlarda yapıldığının bilgilerini tutan, birden fazla kişinin ortak bir projede aynı zamanda çalışmasına imkan sunan, farklı kişilerin aynı yerde yaptığı değişiklikleri algılayıp bilgi veren ve ilk günden bugüne kadar projede yapılmış tüm değişiklikleri versiyon geçmişi şeklinde bize sunabilen bir sistemdir.
Neden ve Kim Tarafından Çıkarıldı ?
Git, benim de hayatımda örnek aldığım kişilerden olan Linus Torvalds tarafından 2005 yılında tasarlanıp geliştirilmeye başlandı. Git’den önce de versiyon kontrolü yapılacak yazılımlar vardı fakat her birinin kendine has eksiklikleri vardı. Bunun yanında Linus diğer yazılımcılarla beraber Linux çekirdeğini geliştirirken BitKeeper yazılımının ücretsiz kullanılmasını istemişti ama Larry McVoy buna izin vermemişti. Bu gelişmeden sonra Linus piyasadaki özgür yazılımları inceledi ama o zamanda tam olarak piyasada ihtiyaçları karşılayacak bir özgür yazılım bulamadı ve Git’i geliştirmeye karar verdi.
Neden Kullanma Gereği Duyarız ?
Bu soruyu aslında “Neden Versiyon Kontrolü Yapmalıyız ?” ve “Neden Git’i Tercih Etmeliyiz ?” şeklinde 2 parçaya bölmemiz daha uygun olur.
İlk soruyu cevaplayarak başlayalım. Öncelikle projemizdeki süreci kontrol etmemizin en kolay yolu bir versiyon kontrol sistemi kullanmaktır. Projede çalışan kişilerin hangi kodları yazdığını ve ne zaman yazdığını görmeniz o kişilere iş bölümü yapmanızda veya yetki verip almanızda size yardımcı olacaktır. Ayrıca projedeki gelişmeleri adım adım görebilmek ve olası hatalarda bir önceki çalışan haline geri dönebilmek için de kullanılması elzemdir. Eski usûl “eski.xx, yeni.xx, yeni2.xx, bu-daha-yeni.xx, bu-ondan-da-yeni.xx, vallaha-bu-en-son-surum.xx” gibi versiyon yönetimi ile devam etmek mümkün değildir. Anlamlı bir isimlendirme yapısı kursanız dahi içindeki değişiklikleri satır ve şahıs bazında göremeyeceğiniz için başarılı bir sonuç elde edemeyeceksiniz.
İkinci soruya gelecek olursak; Bu aslında büyük oranla sizin veya şirketinizin maddi durumuyla alakalı bir soru diyebiliriz. Eğer elinizde versiyon kontrolü için ayıracak yeterince para varsa ücretli bir yazılımı da tercih edebilirsiniz. Piyasada birçok ücretli ve ücretsiz yazılım mevcut. Eğer ücret konusu sizin için önemli değilse bir de soruyu kullanılabilirlik ve piyasa bilinilirliği açısından cevaplamak uygun olur. Piyasada öğrenmesi oldukça kolay olan, başta İngilizce olmak üzere birçok dilde gerek yazılı gerek görsel eğitimleri bulunan bir sisteme geçmek hem şirket açısından hem de çalışanlar açısından en akıllıca çözüm olur. Git kullanarak şirkete yeni gelen çalışanları ek bir masraf yapmadan sadece biraz zaman ayırarak en hızlı şekilde şirketinize adapte edebilirsiniz. Veya siz bir çalışan olarak Git öğrenirseniz herhangi bir şirkete girdiğiniz zaman sürekli birilerinin arkasından dolaşıp ne yapmam gerekiyor biraz anlatsana demenize gerek kalmaz. Size gerekli yetkiler verildikten sonra doğruca işinizi yapmaya başlayabilirsiniz.
Şimdilik bu yazıya nokta koyuyorum. Yakın bir zamanda aşağıdaki soruları da cevaplayarak bu yazıyı güncelleyeceğim. Ardından Git kurulumu ve kullanımı ile ilgili yazılara geçeceğim.
İş Hayatında ve Şahsi Kullanımdaki Yeri Nedir ?
Öğrenmesi Zor Mudur ?
Öğrenmek İçin Türkçe Kaynaklar Var mı?
Faydalı olması dileğiyle..
İlk Yorumu Siz Yapın