1- Git Version Control nedir?

  • Git repository’lerinin cPanel üzerinden yönetilmesini sağlar.
  • GitHub, GitLab veya Bitbucket gibi platformlarda bulunan repository’ler cPanel’e klonlanabilir.
  • Repository’deki değişiklikler cPanel üzerinden güncellenebilir.
  • Deploy özelliği ile repository’deki dosyalar belirlenen dizine aktarılabilir.

2- Git Version Control kullanımı için ön koşullar:

  • cPanel hosting hizmetinizde Git Version Control özelliğinin aktif olması gerekmektedir. Varsayılan olarak alınan Linux cPanel Hosting, NodeJS Hosting, Application Hosting planlarımızda bu özellik aktif konumdadır. Hangi hizmeti kullandığınızdan emin değilseniz bu linke tıklayarak bir destek kaydı oluşturabilir ve destek ekibimize danışabilirsiniz.
  • Kullanılacak repository’nin erişilebilir durumda olması gerekmektedir. Private repository kullanılması durumunda cPanel üzerinde gerekli SSH anahtarı veya kimlik doğrulama yapılandırmasının yapılması gerekmektedir.
  • Private repository kullanılacaksa gerekli authentication/SSH erişimi yapılandırılmış olmalıdır.
  • Repository’nin çalışacağı uygulamaya göre PHP/Node.js vb. gereksinimlerin ayrıca yapılandırılması gerekebilir.

3- Repository klonlama

  • Öncelikle cPanel’e giriş yapılması gerekmektedir. cPanel’e nasıl giriş yapacağınızı öğrenmek için bu yazımızı okuyabilirsiniz.
  • cPanel’e giriş yaptıktan sonra Git Version Control seçeneğine tıklayarak ilgili ekrana ulaşabilirsiniz.

  • Git Version Control seçeneğine tıkladıktan sonra açılan ekranda sağ üst kısımda bulunan Oluştur butonuna tıklıyoruz.

  • Oluştur butonuna tıkladıktan sonra açılan sayfada sırasıyla Git Repository URL’sini, repository’nin nereye klonlanacağını ve repository ismini giriyoruz. Sonrasında sayfanın en altında bulunan Oluştur butonuna tıklıyoruz.

  • Not: Repository’nin klonlanacağı dizinin, Git repository dosyalarını barındırmak için kullanılacak boş bir dizin olması gerekmektedir. Mevcut web sitesi dosyalarının bulunduğu public_html gibi bir dizinin doğrudan repository olarak seçilmesi, dizinde mevcut dosyalar bulunması durumunda hata alınmasına neden olabilir.
  • İşlem başarılı olduğunda sizi repository’lerin olduğu sayfaya yönlendirecektir. Bu sayfada eklediğiniz repository’i görüntüleyebilir, sağ tarafta bulunan butonlar üzerinden yönetimini sağlayabilirsiniz.

  • Repository’nin sağ tarafında bulunan “Yönet” butonuna tıklayarak eklediğiniz repository’nin yönetimsel işlemlerini gerçekleştirebilirsiniz.

4- Repository Pull ve Deploy işlemleri

  • Repository cPanel’e klonlandıktan sonra GitHub üzerindeki değişiklikleri cPanel’e aktarmak için Pull or Deploy seçeneği kullanılabilir.
  • Pull: Uzak repository’de bulunan değişiklikleri cPanel üzerindeki repository’ye aktarır.
  • Deploy HEAD Commit: Repository’deki mevcut HEAD commit’inin deployment için belirlenen dizine aktarılmasını sağlar.
  • Deployment işleminin kullanılabilmesi için repository içerisinde .cpanel.yml dosyasının bulunması ve deployment işlemlerinin bu dosya üzerinden tanımlanması gerekmektedir.

Örnek .cpanel.yml dosyası:

---
deployment:
tasks:
- export DEPLOYPATH=/home/kullaniciadi/public_html/
- /bin/cp -R * $DEPLOYPATH

5- Sık Karşılaşılan Hatalar

Repository klonlanamıyor

  • Repository URL kontrol edilmeli.
  • Private repository ise SSH erişimi/authentication kontrol edilmeli.
  • SSH key’nin Git sağlayıcısına eklenip eklenmediği kontrol edilmeli.

Deploy işlemi çalışmıyor

  • .cpanel.yml dosyasının repository içerisinde doğru konumda olduğu kontrol edilmeli.
  • DEPLOYPATH kontrol edilmeli.
  • Deployment sırasında oluşan hata mesajı incelenmeli.

Dosyalar public_html içerisine gelmiyor

  • Repository path ile deployment path birbirinden farklı olabilir.
  • .cpanel.yml içerisindeki DEPLOYPATH kontrol edilmeli.

Değişiklikler siteye yansımıyor

  • Önce repository’nin Pull ile güncel olduğundan emin olunmalı.
  • Ardından Deploy HEAD Commit işlemi yapılmalı.
  • Uygulama cache’i varsa ayrıca temizlenmeli.