Github Nedir
Github Nedir

Github Nedir

Tags
Teknoloji
Üretkenlik
Yazılım
Published
April 25, 2023
Günümüz teknolojileri ve yoğun bir şekilde bilgi paylaşımı yapılması, yazılım sektörüne bir gelişim sağladı. Github gibi teknolojiler sayesinde bilim, yazılım, savunma sanayi gibi birçok alanda açık kaynak koda sahip proje hayata geçirilmeye başlandı ve böylece dünyanın neresinde olursa olsun farklı insanların aynı projede iş birliği ile ortak çalışma yürütmesi de mümkün hale geldi.
Bildiğiniz üzere içerisinde yazılım barındıran tüm ürünlerin arkasında geniş bir ekiple beraber büyük bir emek ve zaman var. Ekip çalışması zaten zor, özellikle bir de konu yeni bir yazılım geliştirmekse işler daha da karmaşık bir hal alabilir. GitHub servisi tam da bu tür durumları ortadan kaldırmak için var.
notion image
Github, yapılan çalışmaların, varsa değişikliklerin bulut sistemi içerisinde tutularak tekrar ulaşılabilmeyi sağlayan web tabanlı bir platform diyebiliriz. Ekip halinde geliştirilen yazılım projelerinde internet tabanlı bir depolama alanı sunmakta. Siz de bir şey saklamak için kendinize bir depo oluşturmanız gerek. Bunun için GitHub’a bir kullanıcı adı ve e-mail ile üye olmanız gerekiyor. Kendi kullanıcı adınıza olan bu alana projelerinizi yükleyebilirsiniz.
Ayrıca tamamladığınız projeleri bu platform üzerinde herkese açık veya kapalı bir şekilde de tutabilirsiniz. Kayıt edilen bir projeye uzaktan bir kişinin de erişimi mümkün. İstiyorsanız, projeye kimin hangi saatte eriştiği, nerede değişiklik yaptığını da görüntüleyebilirsiniz. Bunlara ek olarak, birçok şirket ve işverenin de Github hesabı mevcut. Bu nedenle, bir iş bulmayı planlıyorsanız bir Github profiliniz mutlaka olmalı.

Merak edilen GitHub/GitLab Nedir, Arasındaki Fark Nelerdir?

notion image
GitHub ve GitLab, Git sürüm kontrol sistemini barındıran bulut tabanlı hizmetlerdir. Aynı zamanda yazdığınız kodları ve yazılım projelerini depolayabileceğiniz alanlardır.
GitHub, yalnızca GitHub sunucularında çalışmanıza izin verirken GitLab, kendi sunucunuza kurarak veya GitLab sunucularında kullanabilmenize olanak tanır.
Özet olarak,  GitHub vs GitLab farklılıkları aşağıdaki tabloda bulabilirsiniz:
Özellikleri
GitLab
GitHub
Ana Sayfa
Eylül 2011
Nisan 2008
Ücretsiz plan
Sınırsız kamu ve özel depoları
Yalnızca herkese açık depolar için ücretsiz
Ücretli planlar
Premium Plan için kullanıcı başına yıllık 19 ABD Dolarından başlayan fiyatlarla. Veya Ultimate için kullanıcı başına yıllık 99 ABD doları.
Ekip için kullanıcı ve yıl başına 4 ABD doları, İşletmeler için 21 ABD doları veya One için daha fazla.
Kod inceleme işlevleri
evet
evet
wiki
evet
evet
Hataları ve sorunları izleme
evet
evet
Özel şube
evet
evet
Sistem oluştur
evet
evet (üçüncü şahıs hizmetiyle)
Projeleri içe aktar
evet
Yok hayır
Projeleri dışa aktar
evet
Yok hayır
Zaman takibi
evet
Yok hayır
ağ sağlayıcısı
evet
evet
Kendi kendine barındırma
evet
evet (iş planıyla)
popülerlik
546.000'den fazla proje
69.000.000'den fazla proje
Git kullanmak istiyorsanız
  • Öncelikle bilgisayarınızdan git adresinden bilgisayarınıza uygun olanı indirerek kurmanız gerekmektedir. (Git Bash ve Git Gui)Daha sonra cmd ekranını açarak; git --version yazarak bilgisayarınızda Git’in kurulup kurulmadığını rahatlıkla görebilirsiniz.
  • İlk olarak yapmanız gereken şey, kullanacağınız servise yukarıda da bahsettiğim gibi üye olmak. Daha sonra ise bir depo (repository) oluşturmaktır. Bunun için üst kısımda bulunan + simgesine tıklayın ve “New repository” seçeneğine tıklayın veya sağ tarafta bulunan “Yeni proje” düğmesine basın.
notion image
  • Ardından, gelen sayfada “Boş proje oluştur” seçeneğine tıklayarak bir sonraki aşamaya geçin. Gelen sayfada boşlukları kendinize uygun doldurabilirsiniz.
 
Örneğin, bu sayfa deponuzun adını, açıklamasını, herkes tarafından erişilebilir mi (Public) veya sadece izin verilenlerin erişebileceği (Private) bir depo mu olsun gibi bilgileri girebileceğiniz bir alan mevcut.
notion image

GitHub kullanmadan önce aşağıda belirttiğim kavramları bilmenizde fayda var:

notion image
Repository (repo): Sürüm geçmişleri de dahil tüm dosyaları bulabileceğiniz alan.
Branch: Ana projeyi etkilemeyecek şekilde güncelleme yaptığınız kısım. Branch’i diğerlerinden ayrı bir geliştirme yapmak istediğiniz zaman kullanabilirsiniz.
Markdown (.md): Düz metni GitHub koduna dönüştürmeye yarayan eklenti ve bence dokümantasyon açısından çok da faydalı.
Commit Changes: Repo’da bulunan bir değişikliği kaydetmeye yarar. git commit bu komut commit oluşturmayı sağlamakta. Bu işlem ile yapmış olduğumuz değişiklikleri de içeren proje paketlenmiş olacak.
git commit -m “projenin ilk sürümü” örneği şeklinde kullanabilirsiniz.
Pull Request (PR):Bir alanda yapılan değişikliğin başka bir alanla birleştirmek isterseniz bu terim sayesinde bir istek atabiliyorsunuz.
Origin: Çalışmanın ana dalı olan Origin (kaynak) olarak ifade edilmekte.
Merge: Pull Request (PR) onayı sonrası birleştirme ve dosyayı ana projeye ekleme.
Issues:Proje panosundaki değişiklikleri izlemenizi sağlar.
Clone: Github üzerindeki bir projeyi bilgisayarınıza kopyalayıp yani indirmenize yarar. Bunun için “git clone” komutunu kullanabilirsiniz.
Federalist: GitHub değişikliklerini dağıtan ve önizleme imkanı sunan platform.
Ayrıca diğer bazı git komutları da denemeniz açısından belirtmek istiyorum:
git add : Bu komut ile yaptığınız güncellemeleri direkt Git’e eklemenizi sağlar. (git add . ile yapılan tüm değişiklikler Git’e eklenir)
git push: Local’de yaptığınız değişiklikleri uzak sunucuya (Github, Gitlab..) göndermenizi sağlar.
git pull: Uzak sunucudaki değişiklikleri veya herhangi bir projeyi local’inize çekmeyi sağlar.