Yeni başlayanlar için Git#1
Merhaba 👋,
Bugün yazılım dünyasının vazgeçilmez araçlarından olan Git ve Github hakkında konuşmak istiyorum. Bu konu oldukça geniş olduğu için, Git ve Github’ı ayrı iki yazıda ele almayı tercih ettim. İlk olarak, Git ile başlayalım, diğer yazımda ise Github’ı tanıtacağım. 📄
Versiyon kontrol sistemlerini anlamaya başlamadan önce, Git’in ne olduğunu anlamamız önemlidir. Git, yazılım geliştirme süreçlerinde değişikliklerin izlenmesini, yönetilmesini ve işbirliği yapmayı kolaylaştıran bir versiyon kontrol sistemidir. 🛠️
Şimdi, Git’i daha yakından incelemeye başlayalım. 🚀
Versiyon Kontrol Sistemi(VSC) Nedir?
Versiyon kontrol sistemi, yazılım ekiplerinin zaman içinde kaynak kodda yapılan değişiklikleri yönetmesine yardımcı olan araçtır.
Bir dosyadaki değişikliğin hangi zamanda kim tarafından ve neden yapıldığına ve ekip çalışmalarında paralel ilerlemek ve projede herhangi bir karışıklığa neden olmamak üzere ortaya çıkmıştır. Yukarda da bahsettiğim gibi bu yazımda sizlere popüler versiyon kontrol sistemlerinden biri olan Git’den bahsedeceğim.
Versiyon Kontrol Sisteminin Faydaları Nelerdir?
1-Dosyaların uzun vadede geçmişleri tutulur.
2-Takım çalışması için uygun ortamı sunar ve ekip üyeleri eş zamanlı olarak aynı kod üzerinde çalışabilir.
3-Proje üzerinde yapılan tüm değişiklikler kontrol edilebilir.
Peki, Git Nedir ?
Git, yazılım geliştirme süreçlerinde kullanılan,hız odaklı, dağıtık çalışan bir versiyon kontrol sistemidir. Git, Linux’un mimarı Linus Torvalds ve topluluğu tarafından açık kaynak kodlu olarak geliştirilip günümüze kadar gelmiştir.
Git’in ne olduğunu anladığımıza göre artık kurulumunu yapmaya başlayabiliriz. Şimdi sizlere windows için adım adım kurulumundan bahsedeceğim. Windows işletim sistemleri haricinde diğer işletim sistemlerin de kurulumu oldukça kolay onlara da benzer adımlar uygulayarak bilgisayarınıza yükleyebilirsiniz.
Kurulum
İlk önce https://git-scm.com/downloads adresine tıklıyoruz.
Açılan sayfada gördüğünüz üzere Windows işletim sistemi için değil, diğer işletim sistemleri için kurulum dosyalarını da bulabilirsiniz. Bu yazıyı ne zaman okuyacağınızı bilmiyorum, ancak şu anki güncel sürüm olan 2.42.1'i indirmek için “Download 2.42.1 for Windows” düğmesine tıklayarak indirme işlemine başlayabilirsiniz.
Git’i bilgisayarınıza başarıyla kurup kurmadığınızı görmek istiyorsanız test etmek için aşağıdaki adımları uygulayın.
- Başlat > Ara > Git Bash > Çalıştır
- Git Bash çalıştırdıktan sonra karşımıza böyle bir ekran çıkacaktır.
Açılan ekrana aşağıdaki komutu yazdığımızda güncel sürümü gösteriyorsa problem yok. Git’i gönül rahatlığıyla kullanabilirsiniz.
git --version
Git Terminolojisi
- Repository (Depo): Git projelerinin temel birimidir. Projenizin tüm dosyaları, geçmişi ve konfigürasyonu bu depo içinde saklanır.
- Branch (Dal): Bir Git deposundaki bağımsız kod geliştirme yoludur. Her branch, depodaki mevcut kod tabanının bir kopyasıdır ve üzerinde değişiklikler yapabilirsiniz. Farklı branchler, aynı projede aynı anda farklı özellikler veya geliştirmeler üzerinde çalışmanıza olanak tanır.
- Commit: Commit, kodunuzdaki değişikliklerin bir anlık görüntüsünü almanızı sağlar. Her commit, bir açıklama ile belirtilir ve depoya kaydedilir. Bu, kodunuzdaki ilerlemeyi izlemenize ve geçmişteki sürümlere geri dönmenize yardımcı olur.
- Pull Request (PR-Çekme İsteği): Bir dal üzerinde yaptığınız değişiklikleri ana branch ile birleştirmek için açtığınız bir istektir. Bu, diğer geliştiricilerin değişikliklerinizi incelemesine ve onaylamasına olanak tanır.
- Merge (Birleştirme): İki farklı dalı veya commiti birleştirerek, değişiklikleri birleştirme işlemidir. Birleştirme işlemi, farklı dallardaki değişiklikleri birleştirmek veya dalınızı ana dal ile birleştirmek için kullanılır.
- Clone: Bir uzak Git reposu yerel makinenize kopyalamak için kullanılan komuttur. Bu, projeyi yerel makinenizde çalıştırmak ve değişiklikler yapmak için gereklidir.
- Fork: Bir projenin kopyasını kendi hesabınıza almak anlamına gelir. Bu, başka bir projeye katkıda bulunmak veya kendi sürümünüzü oluşturmak istediğinizde yaygın olarak kullanılır.
- Pull (Çekme): Uzak repodan yerel repoya değişiklikleri almak için kullanılır. Bu, diğer geliştiricilerin yaptığı değişiklikleri yerel projenize entegre etmenizi sağlar.
- Push (Gönderme): Yerel repodaki değişiklikleri uzak repoya yüklemek için kullanılır. Bu, kendi değişikliklerinizi ve dallarınızı diğer geliştiricilerle paylaşmanızı sağlar.
- Conflict (Çakışma): Farklı dallardaki veya commitlerdeki değişikliklerin birleştirilmesi sırasında çakışmalar meydana gelebilir. Bu, aynı satırlarda farklı değişiklikler yapıldığında ortaya çıkar ve manuel bir çözüm gerektirir.
Temel Git Komutları
1. git config: Bu komut sayesinde bilgisayarınızdaki git terminalini kendi Github hesabınıza bağlayabilirsiniz.
git config --global user.name "Zeynep"
git config --global user.email "zypylmz@icloud.com"
Yukarıdaki iki komutu terminale girdikten sonra, terminalde yapacağınız her işlem artık Github hesabınızda paralel ilerleyecektir. Ardından git config — list ile terminalde kontrol edebiliriz.
git config --list
2. git init: Bir Git reposu oluşturmak için kullanılır. Bu komut, mevcut bir dizini Git reposuna dönüştürür.
git init [repository adı]
3. git clone : Bu komut, mevcut bir URL’den bir havuz elde etmek için kullanılır.
git clone [url]
4. git add : Repoya bir dosya eklemek için kullanılır.
git add [dosya-adi]
**Tek seferde bütün dosyaları eklemek için ise: **
git add . veya $ git add * veya $ git add -A .
**
-A(all) tümü anlamına gelmektedir.
. ise dosya uzantılarını ifade eder.
**
5. git commit: Bu komut ile değişiklikleri kalıcı hale getirebilir ve ekip arkadaşlarınızın bundan haberdar olmasını sağlayabilirsiniz.
git commit -m "[...]"
6. git diff: Bu komutu dosyalar arasındaki farkları görmek veya incelemek için kullanılır.
git diff
7.git status: Bu komut üzerinde çalışılan projenin o anki durumu hakkında bilgi verir. Yapılan değişiklikler, eklenen ve silinen dosyalar gibi bilgiler listelenir.
git status
8.git log: Projedeki commit geçmişini görüntülememizi sağlar. Bütün commit’ler, id’si, yazarı, tarihi ve mesajı ile beraber listelenir.
git log
9.git rm: Bu komut, dosyayı çalışma dizininizden siler ve silme işlemini gerçekleştirir.
git rm [dosya-adi]
10. git branch : Bu komut, geçerli depodaki tüm yerel branchleri listeler.
git branch
**yeni bir branch oluşturmak için**
git branch [branch name]
11. git show : Bu komut, belirtilen taahhüdün meta verilerini ve içerik değişikliklerini gösterir.
git show
12.git merge: Bu komut ile oluşturulan branch ana dosya ile kolaylıkla birleştirebilirsiniz.
git merge [branch name]
13. git push: Oluşturmuş olduğunuz projeyi Github’taki kaynağa gönderir.
git push
14.git pull: Proje ana dosyasındaki yaptığınız değişikliklerin bilgisayarınızdaki versiyonuna çekilmesini sağlar.
git pull
15. git remote: Bu komut, yerel repodan uzak sunucuya bağlamak için kullanılır.
git remote
Tüm bunları yaptınız, projeniz artık GitHub’da bulunuyor, ancak masaüstünde proje dosyasının içinde `.gitignore` dosyasını göremiyorsunuz. Ne yapacaksınız?
Öncelikle .gitignore’a kısaca değineyim.
.gitignore
dosyası, Git projelerinde belirli dosyaların ve dizinlerin izlenmesini engelleyen bir yapıdır. Masaüstünde bazen görünmeyebilir bunun için aşağıda gösterdiğim adımları uygulayıp bu sorunu ortadan kaldırabilirsiniz.
1-Projenizin masaüstündeki dosyasına girin. Görünüm kısmına tıklayın.
2- Ayrıntılar kısmına tıklayın ardından “Dosya adı uzantılarına ve Gizli ögelere” tıklayın. .gitignore
dosyası artık dosyanızın içerisinde görünür vaziyette olacaktır.
Temel Terminal Komutları Hakkında Bilgi Sahibi Olmak İsterseniz:
https://www.webguncesi.net.tc/2022/12/03/her-kullanicinin-bilmesi-gereken-en-temel-terminal-komutlari.html
https://www.freecodecamp.org/news/introduction-to-git-and-github/