Git #1: GİT’E GİRİŞ

Merhabalar arkadaşlar. Ben Bora Fırlangeç. Uygulama Akademisi sitesine editörlük teklifi geldiği için çok mutluyum. Bu yüzden de yediden yetmişe herkesin işine yarayabileceğini düşündüğüm muhteşem bir teknolojiyle başlangıç yapmak istedim. Üşengeçliğimi kırsın diye de tek bir yazıyla değil, uzun bir yazı dizisiyle sizlerle olacağım. Umarım beğenerek okursunuz. Dilerseniz, bu muazzam teknolojiyi incelemeye başlayalım. Şimdiden iyi okumalar.


Hepimiz gerek iş hayatında, gerek günlük yaşamımızda irili ufaklı bir çok projeyle uğraşıyoruz. Kimimiz kitap yazıyor hobi olsun diye, kimimiz yazılımla ilgileniyor profesyonel olarak. Geliştirdiği projelerden gelir elde edenimiz de var içimizde, tamamen eğlence amaçlı projeler geliştirenimiz de…

Hangi gruptan olursanız olun bir yerden sonra başınız ağrımaya başlıyor abuk sabuk problemler yüzünden. Hele de yaptığınız iş büyümeye başladıysa ya da geliştirdiğiniz proje genişlemeye doğru yol alıyorsa, iş iyice içinden çıkılamaz bir hâl alıyor ister istemez.

İster tek başınıza çalışın ister bir ekiple, karşılaşacağınız problemleri şimdiden görebiliyor olmak çok can sıkıcı. Gelin önce bu problemlerden bahsedelim. Yani biraz canınızı sıkalım önce, sonra sizi rahatlatalım.

Projenizi tek başınıza idare ediyor ve projeniz büyümeye başladıysa karşılaşacağınız en önemli problem projenizi küçük parçalara ayırmak olacak. Gelin bunu iki örnek üzerinde inceleyelim:

  1. Diyelim ki bir hikâye kitabı yazmaya karar verdiniz. Başladınız kitabınızı yazmaya fakat kitabınız ilerledikçe fark ettiniz ki, daha önce yazdığınız hikâyelerinizi daha iyi yazabilirsiniz. Tamam dediniz ve hikâyelerinizi gözden geçirip revize ettiniz. Fakat aradan bir hafta geçti ve daha önce yazıp revize ettiğiniz halini daha çok beğendiğinizi, öykünüzü eski versiyonuna döndürmek istediğinizi fark ettiniz. İşin en kötüsü, belgeyi kaydetmiştiniz ve artık o hâline geri dönemezsiniz.
  2. Geliştirdiğiniz bir yazılıma yeni özellikler eklemek istiyorsunuz diyelim ki. Başladınız kodlamaya ve her yeni kod yazışınızda, aklınıza yeni yeni özellikler geliyor ve heyecânınızı kaybetmeden onları da ekliyorsunuz projenize. Bir süre sonra bir kaç gün önce eklediğiniz bir kodun, projenin gidişini yavaşlattığını görüyorsunuz ve o kodu kaldırmaya karar veriyorsunuz. O da ne? Kod nerdeydi? Kodu buldunuz ve kaldırdınız diyelim ki. Projenin olur olmaz yerlerinde, sırf o kodu kaldırdınız diye problemler oluşmaya başladı. Kafayı yemez misiniz şimdi?

Eğer ekip ile proje geliştiriyorsanız problemler yukarıdakiyle sınırlı değil. Şu sorular kafanızı karıştırmak için yeterince ideal:

  1. Herkes aynı dosyalar üzerinde çalışacaksa, kimin, ne zaman, hangi değişiklikleri yaptığını nereden bileceksiniz?
  2. Herkes kendi üslubuyla çalıştığı için projedeki ortak düzeni nasıl sağlayacaksınız?
  3. Birbirinizin yaptığı değişikliklerden memnun değilseniz ve bunu yönetmek istiyorsanız, nasıl yapacaksınız?

Diyelim ki tüm bu sorunların üstesinden gelmek için Google Drive gibi bir çözüm kullandınız ve ortak çalışma sistemiyle işlerinizi yürüteceksiniz. Sürekli çevrimiçi olmayı başarabilecek misiniz?

İşte yukarıda o kadar tatavasını yaptığımız problemlerin çözümünden bahsedecek bir yazı dizisine başlıyoruz Uygulama Akademisi’nde: Git Kullanımı!

GİT NEDİR?

Git, bir versiyon kontrol sistemi çözümüdür ve projelerimizin sürüm yönetimini sağlıklı bir şekilde yürütmemize, ekibimizin projeyle verimli bir şekilde çalışmasına ve daha bir çok işe yarayan bir sistemdir.

Peki Versiyon Kontrol Sistemi (VCS) nedir? Versiyon kontrol sistemi (VCS), herhangi bir dosya ya da proje üzerindeki değişiklikleri izleyen, düzenleyen, yöneten bir veri tabanı çözümüdür. VCS (Version Control System), üzerinde çalıştığımız ister tek bir dosya olsun ister bir klasör ağacı, dosyaların ya da klasörlerin tüm geçmiş bilgilerini düzenlemek, yönetmek ve denetimini sağlamakla mükelleftir.

Daha basit bir değişle Versiyon Kontrol Sistemleri, üzerinde çalıştığımız her türlü verinin gelmişini geçmişini tutan, düzenleyen ve yöneten yazılımlardır, diyebiliriz.

Git, Versiyon Kontrol Sistemi yazılımlarından sadece biridir fakat dünya çapında en çok kullanılanıdır. Git’in en büyük özelliği dağınık bir yapıda olmasıdır. Yani Git, kullanıldığı projede çalışan herkese projenin tüm geçmişini dağıtır. Böylece herkes, projenin tam bir kopyası üzerinde hâkimiyet kurabilir ve onu istediği gibi yönetebilir.

Örneğin üç kişi bir proje üzerinde çalışıyorsa, her bir kişide projenin ilk hâlinden en son hâline kadarki tüm versiyonlar bulunur ve kişi bütün sürümleri yönetme yetkisine sahip olur.

Tanımlarla kafanızın karışmasına izin vermeyin. Kullandıkça yukarıda anlattıklarımızın tamamını kavradığınızı fark edeceksiniz.

GİT NASIL KURULUR?

Git ile projemizin sürüm kontrolünü önce kendi bilgisayarımızda yapacağız, ardından projemizi internet ortamına taşıyacağız. Projelerimizi yerel ortamımızda geliştirirken sürüm kontrolünü yapabilmek için Git’i önce bilgisayarımıza indirecek, onu kuracak ve temel ayarlarımızı yapacağız.

Eğer çok heyecanlıysanız, projemizi ilerde internet ortamına taşımadan önce Github’a kaydolabilirsiniz. Böylece ileriki yazılarımıza hazırlık yapmış olursunuz.

Neyse.

  • Git’i bilgisayarımıza kurmak için https://git-scm.com/download/win adresindeki Click here to download ile başlayan linke tıklayarak Git’i bilgisayarınıza indirin.
  • İndirilen dosyayı çalıştırın ve Next Next diyerek kurulumu tamamlayın.

KURULUM KONTROLÜ VE GİT AYARLARI NASIL YAPILIR?

Şunu baştan söyleyelim: Git kullanırken komut satırı CMD üzerinden komutlar girerek işlerimizi halledeceğiz fakat endişelenmeyin, bütün aşamalarda yanınızda olacağız.

Bu arada, örnek kodları ve çıktılarını tek tek değil, yazılan kod ve çıktısını alt alta vereceğiz ki yazdığımız kodun sonuçlarını doğrudan görebilelim.

Git yazılımını başarıyla kurup kurmadığınızı anlamanın çok basit bir yolu var. Gelin bunu birlikte yapalım:

  1. Windows+R ile çalıştır penceresine ulaşalım;
  2. Açılan iletişim kutusuna küçük harflerle cmd yazıp enter tuşuna basalım;
  3. Açılan Komut satırı’na küçük harflerle
    git version
    yazalım ve sonucu aşağıdaki gibi alıp almadığımızı bir görelim:
git version
git version 2.32.0.windows.2

Not: Yukarıdaki versiyon bilgim sizden geride olabilir. Buna takılmayın çünkü ben üşengeç bir adamım ve güncellemeyi hep erteliyorum.

Şimdi de ayarlarımıza bir göz atalım ve temell Git kurulumumuzu tamamlayalım.

Yukarıdaki adımları kullanarak cmd penceresine erişelim ve aşağıdaki iki kodu sırasıyla, ilgili yerlere kendi bilgilerimizi yazarak uygulayalım:

git config --global user.name "kullaniciadi"
git  config --global user.email "epostaadresi"

Bu bilgiler ne işimize yarayacak diye soranlara cevabımız şu:

Projeler birden fazla kişiyle geliştirilirken, kimin hangi değişiklikleri yaptığı bilgisinde yer alacak ve bizi diğer proje ekiplerinden ayıracak bilgiler işte bunlar olacak.


Yazı dizimizin ilk bölümünün böylece sonuna gelmiş bulunuyoruz arkadaşlar. Bir sonraki yazı dizimizde elimizdeki bir projeyi nasıl Git ile yönetilebilir bir hâle getireceğimiz konusuna değinecek ve ilk versiyon kontrollerimizi yapmaya başlayacağız. İlk yazımız fazla teorik oldu farkındayım fakat ikinci yazımızın başı da biraz teorik olacak. Ardından kodlamaya ve projemizi yönetmeye başlayacağız.

Bir sonraki yazımızda görüşmek üzere diyorum. Şimdilik, hoşça kalın.

Bir yanıt yazın