Ana içeriğe atla

Sunucularda Git Server Kurulumu ve Proje Yapılandırması


Sunucu tarafında Git Server Proje kurulumu için anahtar kelime, proje başlatılması ile birlikte kullanılacak bare komutudur. Bu komut kısaca açıklayacak olursak sunucuda, Git Server’e projenin sunucu versiyonu olduğunu bildirmemiz için kullanılan komuttur. Bu makalemizde bare komutu ile birlikte sunucu tarafında Git Server proje yapılandırmasını detaylı ele alacağız. Makalemde sunucu olarak kullanacağınız bilgisayarda Git Server’ın yazılımının kurulu olduğunu varsayıyorum. Eğer kurulu değilse kullandığınız işletim sisteminize uygun,  sayfada bulunan Git Server kurulumu makalelerine göz atabilirsiniz. Eğer sunucuya ssh, telnet, http üzerinden bağlanıyorsanız anlatacağım işlemleri kendi yapınıza uydurabilirsiniz. Makalenin konusu sunucu tarafında Git Server Projesinin sunucu tarafının doğru şekilde başlatılması ve düzenlenmesi. Asıl amacım süreci anlatabilmek. Ayrıca bu konuyu okuyorsanız ve anlattığım konularda işlem yapacaksanız veya anlattıklarımı uygulayacaksanız Git Server konusunda biraz tecrübeli olmanız, aynı zamanda komut satırında çalışabilmeniz, Git Server Mantığını iyi anlamış olmanız gerekiyor. Aslında sunucu tarafında projenin başlatılması birkaç komuttan ve kullanıcı düzenlemesinden ibaret olsa da doğru yapılandırma ve mantığı iyi anlama açısından bu konu çok büyük önem arz ediyor…


Konuya giriş açısından yukarıdaki paragrafta da kısaca bahsettiğim gibi bare komutu sunucu tarafında proje başlatılmasının anahtarıdır. Proje başlatılması için git init –bare veya git –bare init komutu kullanılır. Projenin başlatılması ile ilgili bir örnek verecek olursak:

mkdir projeadi.git
cd projeadi.git
git --bare init
git update-server-info

Aslında sizin sorunuzu duyar gibiyim… Neden git init kullanmak varken sunucu tarafında git –bare init komutunu kullandık? Bu kullanım proje kopyasını nasıl sunucu kopyası yapar?
Git Server yapısı dağıtık mimaridedir. Yani projede çalışan herkeste bir working copy varken bir de merkezi sunucuda kopya bulunur. Böylece herkes kendi kopyası üzerinde çalışırken merkezi sunucuda ortak çalışma tutulmuş olur. Git bare komutun kullanımın temel amacı da herkesin merkezi sunucuda commit yada değişiklik komutunu uygulamasını engellemektir. Yani siz projeyi –bare seçeneği ile başlatırsanız artık bu prjede git commit komutunu uygulayamazsınız. Yaptığınız değişiklikleri sadece push ve pull komutları kullanarak alabilir ve ya sunucuya değişiklikleri uygulayabilirsiniz. Aslında Git Server mantığını anladıysanız ve bir ekiple proje geliştiriyorsanız, aynı zamanda dağıtık versiyon yönetim kontrol sistemi mantığına da aşinaysanız bunun ne kadar olduğunu anlayabildiğinizi biliyorum. Bare komutun önemini kısa bir cümleyle anlatmak gerekirse bu komut Git Server yapısında dağıtık mimariyi uygulayabilmenin anahtarıdır. Bu komutla proje başlatırsanız projede yapacağınız değişiklikleri artık client tarafından yapmak zorundasınız. Bunun dışında Git Server projelerinde olan branch yapılarını, değişiklerin sorgulanması, analizi, geriye dönüşler ve başka işlemler sunucu projesinde de yapılabilir. Burada temel mantık bir daha söylüyorum değişikliklerin client tarafından yapılmasını sağlamak.
Projeyi bare seçeneği ile başlattıysanız projenin erişebilirliğini sağlamak, Sunucu yapılandırmasında yapacağınız son işlem olacaktır. Bunun için kullandığınız iletişim protokolüne (http, ssh) göre, kullanıcı veya group bazında yetkilendirme yapmalısınız.


Umarım bu yazı faydalı olmuştur. Sorularınız varsa sormaktan çekinmeyin. En kısa sürede yanıtlamaya çalışacağım…

Yorumlar