Git ve GitHub Farkı

Git ve GitHub’ın farklı şeyler olduğunu biliyorum, hemen “elmayla armutu mu kıyaslıyor” demeyin. Mesele benim bilmem değil. Mesele bunun farkını bilmeyenlerin öğrenebilmesi.

Git nedir?

Git, Linux’un çekirdeğini geliştiren kişi olarak bildiğimiz Linus Torvalds tarafından BitKeeper ile yaşanan anlaşmazlıklar sonucunda ortaya atılmış bir yazılım olarak geçiyor. Temelleri 7 Nisan 2005 tarihinde ortaya atılmış.

Aslında Monotone ile neredeyse çok benzer bir yapıya sahip olsa da, performans açısından daha avantajlı halde olduğunu söyleyebiliriz.

Peki GitHub nedir?

GitHub, bir bulut tabanlı Git servisi olarak hizmet veren bir platform. Ve Git ile alakası sadece bunu bulutta depolamak gibi düşünebilirsiniz.

Elbette bunu 2 cümle, 19 kelime ile açıklamak aşırı basite indirgemek olsa da, amacım sadece bu ikisinin birbiriyle olan farkını net bir şekilde açıklamak.

Git için GitHub şart mı?

Hayır. Hatta hiçbir platforma gerek yok. Eğer tek başınıza çalışıyorsanız ve Git’in nimetlerinden faydalanmak istiyorsanız sadece local repository üzerinde çalışabilir; USB ile bu repository’yi istediğiniz cihaz üzerinde kullanabilirsiniz.

Ancak eğer sadece local değil, uzaktan erişime de açık olsun; birden fazla geliştiriciyle çalışalım derseniz, bunun için kendi Git sunucunuzu kurabilirsiniz. Bunu da benim önerim GitLab kullanarak ayağa kaldırmanız olacaktır. Ama GitLab sevmiyorum derseniz standart bir Git sunucusu da kurabilirsiniz.

Git sunucusu kurmak için 4.1 Git on the Server – The Protocols bağlantısını ziyaret edebilirsiniz.

Tabii bu kısımlar birazcık sunucu bilgisi gerektirebilir.

Git nasıl kullanılır?

Terminal

Bunun iki yolu var. Terminal üzerinden kullanmak. Açıkçası benim en kullanışlı bulduğum yöntem bu. Zaten temel kullanımı da çok basit. git fetch, git add, git commit, git pull, git push, git checkout gibi komutlarla büyük bir kısmını hallete bilirsiniz. Tabii bu kadarla kalmıyor ama büyük bir çoğunluğu bunlardan ibaret.

Git kullanımıyla ilgili çok güzel bir kaynak olarak: git – basit rehber – atla deve değil!

Arayüz Uygulaması

Git yönetimi için birden fazla uygulama bulunuyor. Bunların en popüler ve stabil olanlarından biriyse Sourcetree. İlk çıktığı zamanlar benim de faydalandığım bir uygulama. Onun dışında Visual Studio Code ya da Jetbrains IDE’leri üzerinden de işlerinizi halledebiliyorsunuz. Ben genellikle kullandığım IDE ya da Text Editor (Visual Studio Code) üzerinden işlerimi halletmeyi seviyorum. En kötü ihtimalle de terminal üzerinden 2-3 command çalıştırmak beni yormuyor.

Sonuç

Git, göründüğü kadar zor ya da karmaşık değil. İş ilanlarında karşınıza çıkan “Git kullanabilen” ibaresi; git projesini yönetmek değil. Git ile çalışmayı, semantic commit yazmayı öğrenmeniz kâfi olacaktır. Ve hayır, GitHub’a muhtaç değilsiniz ama doğru kullanmanız açısından da sorun yok.