1. Anasayfa
  2. Yazılım
Trendlerdeki Yazı

GitHub Nedir? Ne İşe Yarar? Niçin Kullanılır?

GitHub Nedir? Ne İşe Yarar? Niçin Kullanılır?
0

GitHub Nedir? Geliştirici olmasanız bile, teknoloji alanındaysanız GitHub’ı mutlaka duymuşsunuzdur. Yazılım veya web geliştirme hakkında bilgi edinirken GitHub deposuna denk gelmiş olabilirsiniz.

Yine de GitHub’ı hiç kullanmadıysanız kafa karıştırıcı görünebilir. Bulut depolama sitesi mi? Programcılar için bir sosyal ağ sitesi mi? Kod paylaşım sitesi mi? Tüm bunların cevabı evet ve daha fazlası.

GitHub, geliştiricilerin kod paylaşması ve projeler üzerinde birlikte çalışması için en popüler kaynaklardan biridir. Ücretsizdir, kullanımı kolaydır ve açık kaynaklı yazılıma yönelik çalışmalarda merkezi hale gelmiştir.

Bunların hepsi bilmeniz gereken bir şey gibi geliyorsa, okumaya devam edin – GitHub’ın ne olduğunu, neden popüler olduğunu, nasıl başlayacağını ve en önemlisi “Git” in gerçekte ne anlama geldiğini açıklayacağız.

GitHub Nedir?

GitHub, yazılım projelerini depolamak, izlemek ve üzerinde çalışma yapmak için kullanılan çevrimiçi bir yazılım geliştirme platformudur. Geliştiricilerin kendi kod dosyalarını yüklemelerine ve açık kaynaklı projelerde diğer geliştiricilerle birlikte çalışma yapmalarına olanak tanır. GitHub ayrıca geliştiricilerin açık bir şekilde ağ oluşturabileceği, işbirliği yapabileceği ve çalışmalarını sunabileceği bir sosyal ağ sitesi olarak hizmet vermektedir.

2008’deki kuruluşundan bu yana GitHub, milyonlarca kullanıcı edindi ve kendisini ortak yazılım projeleri için bir başvuru platformu olarak kurdu. Hizmet ücretsizdir ve kod paylaşmak ve başkalarıyla gerçek zamanlı olarak çalışmak için çeşitli yararlı özelliklerle birlikte gelir.

GitHub, kodla ilgili işlevlerinin yanı sıra, kullanıcıları kendileri için kişisel bir profil ve marka oluşturmaya teşvik eder. Herhangi birinin profilini ziyaret edebilir ve hangi projelere sahip olduklarını ve katkıda bulunduklarını görebilirsiniz. Bu, GitHub’ı programcılar için bir tür sosyal ağ haline getirir ve yazılım ile web sitesi geliştirmeye ortak bir yaklaşımı teşvik eder.

GitHub’ı birazdan daha ayrıntılı olarak göreceğiz. Ama önce GitHub’ın temel aldığı teknoloji olan Git’i anlamamız gerekecek.

Git Nedir?

Git, dosya revizyonlarını yönetmek ve izlemek için kullanılan açık kaynaklı sürüm kontrol yazılımıdır. Herhangi bir dosya türüyle kullanılabilir, ancak çoğunlukla kod dosyalarını izlemek için kullanılır. Git, yazılım geliştirmede en yaygın kullanılan sürüm kontrol sistemidir ve GitHub, hizmeti için bu teknolojiden yararlanır, dolayısıyla adı da buradan gelir.

Muhtemelen daha önce bir çeşit sürüm kontrolü ile çalışmış olabilirsiniz. Örneğin, Google Dokümanlar (ve diğer Google Workspace araçları gibi), belgedeki değişiklikleri zaman içinde farklı noktalarda görüntüleyebileceğiniz bir “Sürüm Geçmişi” aracına sahiptir. Microsoft Office, “Değişiklikleri İzle” özelliği ile benzer bir şeye sahiptir. Veya bir dosyanın birden çok kopyasını kaydetmeyi ve bunları “v1”, “v2” vb. olarak etiketlemeyi tercih edebilirsiniz.

Yazılım projeleri, özellikle ortak projeler için gelişmiş sürüm kontrolü gereklidir. Yazılım geliştirirken geliştiriciler, özellikler eklemek ve hataları düzeltmek için kodu sık sık ve aynı anda günceller. Herhangi bir sorun kullanıcıları etkileyeceğinden, bu değişiklikleri doğrudan kaynak kodunda yapmak mantıklı olmaz. Bunun yerine, geliştiriciler kodun kendi kopyalarıyla çalışırlar ve ardından – kod kapsamlı bir şekilde test edildikten sonra – bu kodu ana kod tabanına eklerler.

Her şey yolunda ve iyi görünüyor. Ancak, birden fazla katkıda bulunanla, herkesin katkılarını tek bir birleşik kod tabanında birleştirmenin veya kimin hangi değişikliklere katkıda bulunduğunu görmenin bir yolu yoksa, işler çok hızlı bir şekilde çok dağınık olabilir. Bu değişiklikler ayrıca bir şeylerin bozulması ve geliştiricilerin önceki bir sürümü geri izlemesi ve geri yüklemesi gerektiğinde izlenmeli ve saklanmalıdır.

Git bunun için var. Bir geliştirici yazılımda bir değişiklik yapmak istediğinde, kaynak kodun kendi kopyasını merkezi depolama konumundan (depo veya kısaca “repo” olarak adlandırılır) yerel sistemlerine indirir, kendi kopyasında güvenli bir şekilde değişiklikler yapar, ardından gözden geçirilmiş kopyalarını, değişiklikleri açıklayan yorumlarla birlikte depodaki kaynak dosyalarla birleştirir. Git, tüm bu değişiklikleri izler ve önceki sürümleri yedek olarak saklar.

GitHub Ne İçin Kullanılır?

GitHub, yazılım geliştiricilerin ve mühendislerin bulutta ücretsiz olarak uzak, halka açık havuzlar oluşturmasına olanak tanır. GitHub’da bir depo kurduktan sonra, onu cihazınıza kopyalayabilir, yerel olarak dosya ekleyebilir ve değiştirebilir, ardından değişikliklerinizi, değişikliklerinizin herkese açık olarak görüntülendiği depoya geri “gönderebilirsiniz”.

Öyleyse neden özel bir depoyla geliştirme yerine GitHub’ı tercih edesiniz? GitHub’ın bu kadar büyük bir oyuncu olmasının temel nedenleri şunlardır:

Gelişmiş İşbirliği

GitHub Nedir?

GitHub’ın en büyük satış noktası, sürüm kontrolü ve erişim kontrolü dahil olmak üzere proje işbirliği özellikleridir.

GitHub ile nelerin mümkün olduğunu göstermek için şu senaryoyu hayal edin: Çevrimiçi bir oyun kodlamak istiyorsunuz ve bir arkadaşınızı size yardım etmesi için görevlendiriyorsunuz. GitHub’da, mevcut ve geçmiş sürümler de dahil olmak üzere tüm dosyaları depolayan bir havuz oluşturursunuz, ardından ortak çalışan arkadaşınıza da bu depoya erişim izni verirsiniz.

Partneriniz oyunun menüsü ve ayarlar ekranlarıyla uğraşırken siz ana oyun ve ekranlar üzerinde çalışmaya karar veriyorsunuz. İkinizin de diğerinin çalışmasına müdahale etmeden değişikliklerinizi aynı anda zorlamanız için, takım arkadaşınızın ekranlarını oluşturabileceği ayrı bir geliştirme alanı yaratırsınız. Bu arada kendiniz çalışmaya devam edersiniz.

Arkadaşınız işini bitirdiğinde, çalışmalarını sizinkiyle birleştirmeyi isteyen bir istekte bulunabilir. Onay verirseniz kendi kodlarınızı birleştirebilirsiniz.

Şimdi, başka bir geliştiricinin oyununuzun deposunu gördüğünü ve çok oyunculu mod ekleme fikri olduğunu varsayalım. Deponuzu çoklayabilir veya kendi kopyasını oluşturabilir, ardından yeni özelliklerini ekleyebilirler. Bitirdikten sonra, size bir çekme isteği gönderebilirler. Onaylarsanız, bu çoklu depo sizinkiyle birleşir ve oyununuz artık çok oyunculudur! Herkesin bir genel depoyu çoklayabileceğini unutmayın, ancak çekme isteklerini kabul etmek veya reddetmek depo sahiplerine bağlıdır.

Elbette, hiçbir yazılım ilk kullanımda mükemmel değildir, bu nedenle GitHub deponuzda yapılacakları listelemek ve oyununuzla ilgili sorunları bildirmek, bunları tartışmak ve çözüldü olarak işaretlemek için sorunlar bölümü de vardır. Bu sorunları çözmek için, işlerin ne zaman ve nerede yanlış gittiğini görmek için bir dosyanın değişiklik günlüğüne bakabilirsiniz.

Özetlemek gerekirse GitHub, birkaç düzine ve hatta binlerce geliştiricinin herhangi birinin çalışmasını geçersiz kılma veya değişikliklerin izini kaybetme endişesi olmadan bir projeye sorunsuz bir şekilde katkıda bulunabileceği merkezi bir alan sağlar.

Kolay Dosya Yönetimi

GitHub, Git’in üstüne şık bir grafik kullanıcı arabirimi (GUI) katmanı ekler. Git kendi başına komut satırı (bir bilgisayarın metin tabanlı arayüzü) üzerinden çalışır. Geliştiriciler komut satırını nasıl kullanacaklarını bilirler, ancak çoğu için bu, dosyalarla etkileşim kurmanın her zaman en etkili yolu değildir.

GitHub’ın arayüzü, Git eylemlerini gerçekleştirmek ve dosya geçmişini görüntülemek için temiz ve kullanıcı dostu bir yol sağlar. Bu, geliştiriciler için daha uygundur ve Git’e alışan yeni başlayanlar için daha erişilebilirdir.

GitHub’ı daha erişilebilir kılan bir diğer avantaj ise bulut tabanlı altyapısıdır. Bir GitHub kullanıcısı, deposuna herhangi bir yerden ve herhangi bir cihazdan erişebilir, depoyu indirebilir ve değişikliklerini zorlayabilir. GitHub’ı kullanmak, tek bir cihaz veya ortamla sınırlı olmadığınız anlamına gelir.

Sosyal Ağ

Herhangi bir GitHub kullanıcısı, platformun kod üzerinde çalışılacak bir yerden daha fazlası olduğunu bilir. Tüm GitHub kullanıcılarının sitedeki projelerini, katkılarını ve etkinliklerini gösterecek profilleri vardır ve herkesin herkese açık profilini ve depolarını görebilir.

GitHub’ın sosyal ağı, geliştiricileri her türlü açık kaynaklı projeyi keşfetmeye ve katkıda bulunmaya teşvik ettiği için başarısı için kritik öneme sahiptir. Önceden, ortak çalışmak isteyenler, katkıda bulunmak için izin isteyen proje sahiplerine kişisel olarak ulaşmak zorundaydı. GitHub ile bir projeyi çoklamak ve ardından bir çekme talebi yapmak kadar kolaydır. Bir proje sahibi, daha sonra, talebini kabul etmeden önce birinin profilini ve geçmiş katkılarını inceleyebilir.

GitHub ayrıca, bir tür portföy görevi görerek işverenler için projeleri sergilemenin bir yolu olarak da hizmet ediyor. Örneğin, işe alımcılar genellikle yetenek aramak için GitHub’ı kullanır, çünkü potansiyel müşterilerin kodu herkesin gözden geçirebileceği şekilde mevcuttur.

Özel Depolar

Elbette, hepsi harika, ancak her şey ücretsiz ve açık kaynaklıysa GitHub nasıl para kazanıyor?

Cevap, GitHub’ın özel depolar da dahil olmak üzere ücretli hizmetler sağlamasıdır. Ücretli bir planda ekipler, kodlarını kapalı sanal kapılar ardında tutarken GitHub üzerinde işbirliği yapabilir. GitHub ayrıca kuruluşları dahili işbirliği araçlarıyla donatan kurumsal çözümler sunar.

Bu Yazıya Tepkiniz Ne Oldu?
  • 2
    be_endim
    Beğendim
  • 0
    faydal_
    Faydalı
  • 0
    anlamad_m_
    Anlamadım.
  • 0
    be_enmedim
    Beğenmedim
  • 0
    e_lendim
    Eğlendim

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir