Günümüzde kodlama ve yazılım geliştirme programları artıyor. Hal böyle olunca bu alanda kullanılan programlara da talep artıyor. Bu durum, farklı kodlama ve DevOps programlarının kendi alanlarında en çok kullanılan program ödülünü kazanmak için yarıştığı çevrimiçi dünyada oldukça rekabetçi bir ortamın oluşmasına neden oldu. Git bu programlardan biridir. Çoğunlukla bilgisayar ekranının arkasında gerçekleştirilen işler için yeni normal uzaktan çalışma durumuyla birleştiğinde bu, Git dahil birçok kişinin programlarını uzak sunucularda barındırmasına yol açtı. Siz de kendinizi bu kategoride buluyorsanız ve kendinize ait bir Git sunucusu kurmak istiyorsanız, başka yere bakmanıza gerek yok.
Bu makalede Git'in tam olarak ne olduğunu gözden geçirip artılarını ve eksilerini anlatacağım, ardından hangi gereksinimlere ihtiyacınız olacağını ve kendi Git sunucunuzu barındıracağınızı göstereceğim. Haydi gidelim!
Git nedir?
Git Kodlayıcıların ve programcıların projelerini gözden geçirmelerine ve bunları mümkün olduğunca verimli bir şekilde gerçekleştirmelerine olanak sağlamak için tasarlanmış bir DevOps programıdır. Git'in en önemli işlevi kaynak kodunda zaman içinde meydana gelen değişiklikleri takip etmektir. Git ücretsiz ve açık kaynak ve düzenli güncellemeler alır. Bu, Git'i dünyadaki en kolay erişilebilir ve güvenilir kodlama DevOps programlarından biri haline getirir. Git örneğinin bulunduğu her bilgisayar, tüm dosya değişikliklerinin kendi ayrı geçmişine sahip tam bir depo dizini görevi görür. Git için 20 yıla yakın aktif geliştirme ve 30'dan fazla güncelleme yayınlandıktan sonra program şu anda 2.40.0 sürümünde çalışıyor ve gelecekte daha fazla güncelleme bekleniyor. Şimdi Git sunucusunu neden kurmak istediğimizi daha iyi anlamak için Git'in bazı kullanım örneklerini öğrenelim.
Git Kullanım Durumları
Kendi Git yerel sunucunuzu barındırmak için çok hızlı hareket etmeden önce, neden bir Git sunucusu çalıştıracağımızı anlamak için Git'in birincil kullanım durumlarına hızlıca alışalım.
Klonlama Havuzu
Birçok geliştirici ve kodlayıcı, istedikleri programları ve dosyaları izlemek için sunucuda bir Git deposu oluşturmayı tercih eder. Git kolayca ve birkaç temel komutla mevcut Linux çekirdek deponuzu kopyalamanıza ve onu kullanarak yalnızca ilgilendiğiniz dosyaların çok daha tutarlı ve verimli bir değişiklik günlüğünü toplamanıza olanak tanır. İşlemin gerçekleştirilmesi kolaydır ve onunla küçük ve büyük kodlama projelerini kolayca yönetebilirsiniz. Bu süreç aynı zamanda “dallanma”, çünkü özünde mevcut deponuzdan yeni bir şube yaratıyorsunuz.
Git İş Akışı
Git İş Akışı, kendi git sunucunuzu yapılandırdığınızda kullanacağınız bir diğer önemli kullanım durumudur. Klonlama işlemini kullanarak iki dal kümesi oluşturmak ve bunlardan birinin projenizi (örneğin bir web sitesi) temsil etmesini sağlamak için Git yerel sunucunuzu kullanabilirsiniz. Daha sonra, her bir geliştiricinin yaptığı tüm değişikliklerin kaydedileceği ve hatta uygulamadan önce test edilebileceği ayrı bir üretim şubesine sahip bir Git sunucusu oluşturabilirsiniz. Geliştirme ve test etmeye yönelik bu çok katmanlı yaklaşım yalnızca verimliliğinizi artırmakla kalmaz, aynı zamanda geliştirme sürecinin ve değişikliklerin izlenmesini de inanılmaz derecede kolaylaştırır.
Birleştirme
Deponuzu dallandırmayı ve günlüğü değiştirmeyi hatırlıyor musunuz? Adından da anlaşılacağı gibi Birleştirme bu operasyonun tam tersidir. Git'in en zorlu yönü olarak kabul edilen birleştirmede, verileri bir depo dal düğümünden, başlangıçta ayrıldığı ana depoya geri enjekte etmeyi düşünüyoruz. Bu genellikle kapsamlı bir proje raporuna ve farklı alanlardaki tüm proje değişikliklerini kısa ve anlaşılması kolay bir depoda içeren değişiklik geçmişine sahip bir Git sunucusu oluşturmak için yapılır. Proje sırasında karışıklığı önlemek için dallanmaya ihtiyacınız olsa da birleştirme, eylemi tersine çevirmek ve sorun giderme sırasında projenin sonunda daha net bir büyük resim sunmak için tasarlanmıştır.
Kendi Git sunucunuzu barındırın: Artıları ve Eksileri
Her programın, programa girip onu programlarında kullanmak isteyen kullanıcıların bilmesi gereken bir dizi önemli artıları ve eksileri vardır. Bu bölümde Git'e uygulanan artıları ve eksileri tartışacağım. Bununla birlikte, bu artılar ve eksiler yalnızca Git'i kendiniz barındırıyorsanız geçerlidir; bu kılavuz aşağı yukarı bununla ilgilidir, o yüzden hadi konuya geçelim.
Kendi kendine barındırılan Git: Artıları
Üçüncü Taraf Katılımı Yok
Git'in kendi kendine barındırılmasıyla, dosyalarınıza erişme olanağına sahip olan tek kişi siz ve gördüğünüz kişiler olacaksınız. Bu, esasen istenmeyen üçüncü tarafların katılımını ortadan kaldırır ve projenizi gönül rahatlığıyla sürdürmenizi sağlar. Ayrıca verileriniz çok daha güvenli olacak ve güvenlik için aklınızda bulundurduğunuz kaynakları başka bir yere tahsis edebileceksiniz.
Güvenlik
Güvenlikten bahsetmişken Git, en iyi uygulamalar ve üçüncü taraf araçların uygulanmasıyla mümkün olduğu kadar güvenlidir. Kullanmak yerine kendi kendine barındırma işlemi yaptığınızda güvenlik düzeyi düşse de, kendi işleminizi ne kadar güvenli hale getirebileceğiniz konusunda neredeyse sınırsız özgürlük vardır.
Sınırsız Depo
Klonlamayı ve dallanmayı hatırlıyor musunuz? Git ile kaç depo oluşturabileceğiniz konusunda herhangi bir sınır yoktur. Bu, onu her gelişimsel dalın kendi deposuna ihtiyaç duyduğu daha büyük projeler için inanılmaz derecede uygun hale getirir. Bu aynı zamanda Unity ile çalıştığınız 3D varlıklar ve vakalar gibi büyük dosyalara sahip projeler için de mükemmeldir.
Kendi kendine barındırılan Git: Eksileri
Yüksek Miktarda Yönetim Çabası
Git depoları hızla kontrolden çıkabilir Kendi barındırdığınız platformunuzda bir Git sunucusu yapılandırmaya karar verirseniz, tüm dalları ve meta verileri yönetmek kısa sürede baş ağrısına dönüşebilir. Bu nedenle, ya bu konuda inanılmaz derecede hassas olmanız ya da yetenekli bir kodlayıcının bunu sizin için yapması gerekir.
Kaba Öğrenme Eğrisi
Git'i barındırmak bir şeydir, ancak bu konuda uzmanlaşmak ve Git yerel sunucunuzu çalıştırmak tamamen başka bir şeydir. Git, tartışmasız herhangi bir veri havuzu tabanlı DevOps programı arasında en yüksek beceri tavanlarından birine sahiptir ve yine onu öğrenmek için çok zaman harcamanız veya dış kaynaklardan yararlanmanız gerekir.
GUI ve Windows Desteği Yok
Windows'ta bir Git sunucusu kurmak mı istediniz? Ya da belki Git sunucusunu bir GUI ile çalışacak şekilde yapılandırmak istediniz? Şansın kalmadı. Temel kodu Linux çekirdeği olan işletim sistemleriyle sınırlısınız ve işleri kolaylaştırmanıza yardımcı olacak bir GUI yok. Bir Git sunucusu ve kendi kendine barındırıcı kurmak istiyor musunuz? Kodlamanın temellerini öğrenseniz iyi olur.
Eski Yöntem
Akla gelebilecek her ölçüme göre, Git'i kendi kendine barındırılan bir sunucuda kullanmak, Git'i çalıştırmanın daha etkili diğer yöntemlerine göre modası geçmiş ve geride kalmış gibi görünüyor. Git'i daha verimli çalıştırma sürecinin başlıca örnekleri GitLab'ı çalıştırmak olacaktır; bu nedenle, kendi Git sunucunuzu çalıştırmaya karar vermeden önce, ödemeyi yapın GitLab fazla!
Git Sunucusu Kurmak İçin Gereken Gereksinimler
Şimdi bir Git sunucusu kurmak ve kendi Git sunucunuzu barındırmak için gereken gereksinimleri hızlıca gözden geçirelim. Git'i barındırmak için yalnızca iki bileşene, bir sunucuya ve Git'in bir örneğine ve Git sunucusunu yapılandırma sürecini yürütmek için biraz kodlama bilgisine ihtiyacınız vardır.
Git Sunucusu
Sunucuya gelince, kendinize ait başka bir bilgisayar kullanabilir, geleneksel sağlayıcıların özel sunucularını kullanabilir veya daha uygulamalı bir yaklaşımı tercih ediyorsanız bir sunucu kullanabilirsiniz. bulut VPS'si (sanal özel sunucu). Bir VPS'ye sahip olarak sunucuyu doğrudan yönetebilir ve aynı anda Git örneğini çalıştırabilirsiniz. Git sunucusu kurmak için sunucunuzun üzerinde bir Linux dağıtımının olması gerektiğini unutmayın. Cloudzy çok çeşitli seçenekler sunar Linux VPS'si Ubuntu, Debian, CentOS, Kali ve OpenSUSE gibi 10'dan fazla saygın Linux dağıtımını içeren hizmetler. Ayda sadece 4,95 dolardan başlayan fiyatlarla, harika bir bağlantı kalitesi sağlamak için konumunuza yakın, güvenilir bir Linux sunucusuna sahip olabilir ve onu kendi kendine barındırmak ve Git sunucusunu çalıştırmak için kullanabilirsiniz!
Web sitenizi veya uzak masaüstünüzü barındırmak için kendinize en ucuz fiyata ekonomik veya premium Linux VPS edinin. VPS, daha fazla verimlilik için Linux KVM üzerinde çalışır ve daha yüksek hız için NVMe SSD depolama ile güçlü donanım üzerinde çalışır.
Devamını okuGit Örneği
Git sunucusu kurma işlemi kolaydır ve kurulum sürecinin bir parçası olarak bunu otomatik olarak gerçekleştireceğiz. Belirtildiği gibi Git açık kaynaklıdır ve hiçbir maliyeti yoktur. Git'i diğer birçok kodlama ve geliştirme odaklı depo tabanlı programa göre tercih edilebilir kılan da budur. Artık gerekliliklere sahip olduğumuza göre, doğrudan Linux sunucunuza Git sunucusu kurmayla ilgili adım adım kılavuzumuza geçelim!
Linux'a Git Sunucusu Kurun (Adım Adım Kılavuz)
1. Adım: Git'i indirin ve yükleyin
İşte Git sunucusu kurulumunun ilk adımı. Git'i indirmeyi başlatmak için tercih ettiğiniz Linux dağıtımınızın terminaline aşağıdaki komutu girin:
Ubuntu/Debian Tabanlı Dağıtımlar:
sudo apt install git
Arch Tabanlı Dağıtımlar:
sudo pacman -S git
RHEL Tabanlı Dağıtımlar:
sudo dnf install git
Bu komut Git'i Linux sunucunuza indirip yükleyecektir. İşlemin bitmesini bekleyin.
Adım 2: Git Sunucusunu Kaydedin ve Yapılandırın
Başka bir masaüstünde yerel sunucunuz varsa önyükleyin, aksi takdirde VPS'niz varsa Linux sunucunuza uzaktan bağlanmak için SSH veya RDP kullanın. Şimdi Git sunucusunu uzaktan çalışacak şekilde yapılandıracağız. Bunu aşağıdaki komutu kullanarak bir Git hesabı oluşturarak yapacağız:
ssh username@address
sudo useradd git
Daha sonra yeni oluşturduğunuz hesabınıza geçmek için bu komutu girin:
su git
Bu adım çoğunlukla Git yerel sunucunuzun güvenliğini sağlamak için yapılır. Bu hesabı kullanarak sunucunun yöneticisi olacaksınız. Gelecekteki potansiyel kullanıcıları, önceden tanımlanmış sınırlamalara ve erişim düzeylerine sahip kullanıcı grupları halinde güvenli bir şekilde düzenleyebilirsiniz.
3. Adım: SSH Dizinleri Oluşturun ve Sunucuda git Deposu oluşturun
Git sunucusu kurulumundaki bir sonraki adım, dosyamızı kaydetmek için özel bir SSH dizini oluşturmaktır. ortak anahtarlar ve sizin için ek güvenlik katmanları ve tanımlanmış erişim düzeyleriyle sunucuda bir Git deposu oluşturun. Aşağıdaki komutu girerek başlayın:
ssh git@address
mkdir .ssh
chmod 700 .ssh/
touch .ssh/authorized_keys
Bu komut satırını kullanarak başkalarının erişimini kısıtladıktan sonra, SSH anahtarlarınızın güvenli bir şekilde saklandığından emin olmak için sonraki satıra girin. yetkili_anahtarlar bunlara yalnızca sizin erişebileceğiniz klasör (bu komutu yalnızca bir id_rsa.pub dosya):
cd .ssh
ssh-keygen -t rsa
cat id_rsa.pub
Son olarak, ek güvenlikle yeni bir SSH bağlantısı kurmak için oluşturduğunuz SSH ortak anahtarını Git yerel sunucunuza kopyalayın:
cd .ssh
vi authorized_keys
Adım 4: Ana Dizin Oluşturun
Git'inizin gelecekteki projelerinizde kullanacağı tüm depoları kaydetmek için Linux sunucunuzda yeni bir dizin oluşturmanız gerekir. Git depolarınızı yönetmenin tüm artıları ve eksileri hakkında bilgi edinebilirsiniz. Bu komutu girin:
mkdir directory_name
Adım 5: Projenizi Ekleyin!
Git sunucusu oluşturmayı başardınız! Git sunucusu kurulumu işlemi başarıyla sonuçlandırıldı ve siz de Git sunucusunu başarıyla yapılandırmayı başardınız. Geriye kalan tek şey aşağıdaki komutla ek projeler eklemek:
cd parent_directory
mkdir new_project.git
Daha sonra yerel bilgisayarınıza uzak kaynak eklemek için bu komutu girin:
git init --bare
git remote add origin name git@address:new_project.git
Son olarak, her şeyin amaçlandığı gibi çalışıp çalışmadığını test etmek için bir Git push işlemi gerçekleştirin:
touch testfile
git add testfile
git commit -m "test file"
git push name master
git clone git@address:new_project.git
Tebrikler, git'i başarıyla barındırmayı ve sunucuda bir git deposu oluşturmayı başardınız.
SSS
Git'i Sunucu Olmadan Barındırabilir miyim?
Hayır. Sunucunuzun niteliği ne olursa olsun, sunucunuz olarak görev yapacak donanıma ihtiyacınız olacaktır. Depolarınız için bir bulut sunucusu görevi görmek üzere GitHub'u kullanabilir veya VPS Sunucu olarak görev yapmak üzere başka bir üçüncü taraf barındırma hizmetini teklif edemez veya kullanamazsınız.
GUI ile Git Sunucusu Kurmanın Herhangi Bir Yolu Var mı?
Evet. Git'in kendisi GUI'yi desteklemese de, GUI olmadan yaşayamayan kişiler için "Git GUI" olarak bilinen GUI'li bağımsız bir sürüm mevcuttur.
Git için Ücretli Bir Plan Var mı?
Hayır. Git, orijinal geliştiricileri ve yayıncılarının da yansıttığı gibi, her zaman ücretsiz ve açık kaynaklı bir program olmuştur ve öyle kalacaktır. Yani programı, program geliştirmeniz için bir türev olarak kullanabilirsiniz, aksi takdirde program ücretsizdir.
Neden Kendi Git Sunucunuzu Barındırmalısınız?
Sınırlı depolara sahip küçük bir proje yürütmek istediğinizi varsayalım. Bu durumda kendi kendine barındırma çok daha özel ve güvenlidir. Yani temel sebep bu. Ancak daha fazla depoya sahip daha büyük projelere geçtikçe, kendi kendine barındırma verimliliğini kaybetmeye başlar.