Kodun Yol Arkadaşı: Git ve GitHub
Versiyon Kontrol Sistemleri Git ve GitHub ikilisi, yazılım geliştirme süreçlerini kolaylaştıran önemli araçlardan biridir. Bu yazıda, Git ve GitHub’un temelleri

Versiyon Kontrol Sistemleri
Git ve GitHub ikilisi, yazılım geliştirme süreçlerini kolaylaştıran önemli araçlardan biridir. Bu yazıda, Git ve GitHub’un temellerini anlayarak yazılım dünyasında nasıl kullanılabileceğinizi keşfedeceğiz.
Versiyon Kontrol Sistemi Nedir ?
Versiyon Kontrol Sistemi (VCS), projelerde yapılan değişiklikleri adım adım kaydeden ve istenirse bu kayıtları internet üzerinde veya yerel bir depoda saklayarak yönetmemizi sağlayan bir sistemdir.
VCS, yazılım geliştirme sürecini oldukça kolaylaştırır. Örneğin, birden fazla geliştiricinin aynı projede çalışmasını, hataların yönetilmesini ve proje takip edebilmesini kolaylaştırır.
Popüler VCS araçları Git, Subversion (SVN), Mercurial ve Perforce bunlardan bazılarıdır. Git, son yıllarda en popüler ve yaygın olarak kullanılan VCS aracıdır.
Git nedir ?
Git, bir versiyon kontrol sistemidir. Bu sistem, bir projenin geliştirilme sürecinde yapılan değişiklikleri adım adım takibini ve bu değişiklikleri depoya (repository) kaydederek yönetmenizi sağlar. Bu şekilde, projenin geçmişini görebilir, değişiklikleri geri alabilir ve ekip üyeleri arasında işbirliği yapabilirsiniz.
GitHub nedir?
GitHub, yazılım geliştirme projelerini depolamak, yönetmek, paylaşmak ve işbirliği yapmak için kullanılan bir bulut depolama platformudur. Projelerinizi istediğiniz şekilde herkese açık ya da gizli olarak GitHub üzerinde depolayabilirsiniz.

Git Akış
GitHub Ansiklopedisi: Temel Terimler
Repository: Bir projenin tüm dosyalarının ve geçmişlerinin saklandığı depodur. Bu depo projenin tamamını, belgeleri, resimleri, kod dosyalarını ve diğer kaynakları içerir. Ayrıca, depo içinde yapılan değişikliklerin izlendiği ve yönetildiği bir tür merkezi depo olarak işlev görür.
Commit: Bir projede yapılan belirli bir değişiklikler grubunun bir araya getirilerek kaydedilmesini sağlar. Her commit, projenin bir önceki durumundan farklılıkları içerir ve projenin geçmişinde bir iz oluşturur. Commitler, projedeki değişikliklerin izlenmesini oldukça kolaylaştırır.
Branch: Projelerimizi farklı dallara ayırmamızı sağlayan Git’in önemli bir özelliğidir. Özellikle farklı iş parçalarının aynı anda geliştirilmesi veya değişikliklerin denemeleri için kullanılırlar. Bu, projenin farklı yönlerinde eş zamanlı olarak çalışmayı mümkün kılar ve geliştirme sürecini daha düzenli hale getirir.
Pull : Bir depodan veya dalda yapılan değişiklikleri kendi çalışma dalınıza çekmenizi sağlar. Bu, diğer iş birliği yaptığınız geliştiricilerin değişiklikleri alarak yerel depoya entegre etmek için kullanılır. Bu sayede projenin en son halini alabilir ve güncel kalabilirsiniz.
Pull Request: Bir projeye yapılan değişikliklerin aktarılması için kullanılan bir yöntemdir. Bu yöntem, değişikliklerin bir kopyasının farklı bir dala gönderilmesini içerir. PR (Pull Request) oluşturulduğunda, aslında yapılan değişikliklerin projenin sahipleri veya geliştiricileri tarafından incelenerek istenilen alana entegre edilmesi istenir.
Merge: Projenin farklı geliştirme dallarındaki değişikliklerin farklı dallara entegre edilmesi, bir projede yapılan çalışmaların farklı ekipler veya geliştiriciler tarafından yapılan işlerin birleştirilmesini sağlar. Her bir dal üzerinde yapılan değişiklikler, ortak dalda birleştirilir ve tek bir koda yansıtılır.
Fork: Bir projenin kopyasının alınmasıdır. Açık kaynaklı projelerde veya işbirliği yapılan projelerde kullanılır. Geliştirici, orijinal projeyi kendi hesabına kopyalayarak projenin bir kopyasını oluşturur. Bu şekilde, geliştirici kendi kopyasında değişiklikler yapabilir.
Git’i Hızlıca Öğrenmek için 10 Temel Komut
1- git config: Git’in yapılandırma ayarlarını yönetmek için kullanılan bir komuttur.
git config - global user.name "John Doe" git config - global user.email johndoe@example.com
2- git init: Git deposu başlatmak için kullanılır.
git init
3- git add: Değişiklikleri çalışma dizisine ekler.
git add test.txt
4- git commit Değişiklikleri projenin geçmişine kalıcı olarak kayıt eder.
git commit -m "commit text"
5- git status Değişiklikleri ve işlem bekleyen dosyaları gösterir.
git status
6- git push Yerel depodaki değişiklikleri uzak depoya gönderir.
git push origin master
7- git pull: Uzak depodaki değişiklikleri yerel depoya çeker.
git pull origin master
8- git merge: İki dalı birleştirmek için kullanılır.
git merge [branch_name]
9- git remote: Yerel depomuzu uzak sunucuya bağlamak için kullanılır.
git remote add [name] [url]
10- git fetch: Uzak sunucudaki dosyalar ile yerel bilgisayarımızdaki dosyalar arasındaki farkları belirleyip, yerel dosyaları günceller.
git fetch [name]
Yorumlar
Yorumlar (0)
Yorumlar üyelere açık. Üye ol · Giriş yap