NASIL Cotonti sitenizi Git ile korursunuz

Bu kılavuz, aşağıdaki hedeflerden en az birine ulaşmak isteyen Cotonti site sahipleri için hazırlanmıştır:

  • Cotonti deposundan otomatik olarak güncellemeleri çekmek ve değişiklikleri kontrol etmeden ve FTP ile yüklemeden sitelerine aktarmak.
  • Takım arkadaşlarıyla birlikte site geliştirmek ve birbirlerinin değişikliklerini üzerine yazmaktan kaçınmak.
  • Birden fazla site arasında değişiklikleri senkronize etmek.
  • Git ile bir web sitesi dağıtım zinciri oluşturmak.

Gereksinimler:

  • Web sitenizin barındırıldığı sunucuya SSH erişimi.
  • Hem yerel geliştirme bilgisayarınıza hem de web sitesi sunucunuza Git'in kurulu olması.

Bu kılavuzda verilen eylem örnekleri kabuk komutları olarak sunulmuştur. İstemci tarafında, bazılarını bir GUI istemcisi ile değiştirebilirsiniz.

Uyarı: Eğer bir şeyler ters giderse veya Git ile senkronizasyon sırasında bir hata yaparsanız, dosyalarınızı bir yedekten geri yüklemek en iyisidir. Bu yüzden, aşağıdaki senaryoları denemeden önce mutlaka bir yedek alın.

#1. Kullanım Senaryosu 1: Cotonti deposundan yerel kopyanıza ve ardından sitenize

Bilgisayarınızdaki mevcut dizine Cotonti'nin bir dalını klonlayarak yerel bir Git deposu oluşturalım. En son Siena/master dalından klonlamak için:

git clone -o cotonti git://github.com/Cotonti/Cotonti.git .

-o seçeneği, Cotonti deposuna referans adını varsayılan "origin" yerine "cotonti" olarak adlandırmak için kullanılır. Sonundaki nokta, deponun geçerli dizine çıkarılacağını belirtir, gerekirse başka bir yol belirtebilirsiniz.

Eğer Genoa dalını kullanıyorsanız, şu komutu çalıştırın:

git clone -o cotonti -b genoa git://github.com/Cotonti/Cotonti.git .

-b seçeneği, çıkarılacak dal adını belirler. Varsayılan olarak master (siena) kullanılır.

Klonladıktan sonra belirli bir sürüm etiketi ("cotonti-x.y.z") seçmek isterseniz, şu komutu kullanın:

git checkout cotonti-x.y.z

Artık Cotonti'nin yerel bir kopyasına sahipsiniz. Bununla istediğiniz gibi çalışabilirsiniz. Günlük çalışmalarınızda Git kullanımına dair faydalı kaynaklar, bu makalenin Referanslar bölümünde listelenmiştir.

Senkrone edilmiş Cotonti kopyanızı sitenize göndermek için uzak bir Git deposu ayarlamak istiyorsanız şu adımları takip edin:

ssh -l your_login example.com
mkdir site.git && cd site.git
git init --bare
echo -e "#!/bin/sh\nGIT_WORK_TREE=/path/to/htdocs git checkout -f" > hooks/post-receive
chmod +x hooks/post-receive

1. satırda SSH ile sitenize bağlanıyoruz. 2 ve 3. satırlarda Git dosyaları için yeni bir konum oluşturup bir depo başlatıyoruz. 4. satırda bir komut dosyası oluşturarak değişikliklerin otomatik olarak siteye uygulanmasını sağlıyoruz. /path/to/htdocs kısmını, Cotonti sitenizin bulunduğu gerçek yol ile değiştirin. 5. satırda ise bu komut dosyasına çalıştırma izni veriyoruz.

Sonrasında yerel deponuza geri dönerek değişikliklerinizi sunucuya gönderebilirsiniz:

git remote add site ssh://your_login@example.com/path/to/site.git
git push site master

"master" yerine "genoa" veya başka bir dal kullanıyorsanız, ona göre değiştirin.

Bu adımlardan sonra, aşağıdaki bölümlerde açıklanan senkronizasyon komutlarını kullanabilirsiniz.

#2. Kullanım Senaryosu 2: Mevcut bir siteden yerel kopyaya, ardından Cotonti deposuyla senkronizasyon

Bu durumda, uzak web siteniz için site.git deposunu zaten oluşturduğunuzu varsayıyoruz. Önceki kullanım senaryosundaki betiği kullanarak bunu yapabilirsiniz. Eğer sunucunuzda yalnızca bir depo başlattıysanız ancak içine henüz dosya eklemediyseniz, bunu site kök dizinine girip "git add" komutunu çalıştırarak yapabilirsiniz:

ssh -l your_login example.com
cd /path/to/htdocs
GIT_DIR=/path/to/site.git git add .
GIT_DIR=/path/to/site.git git commit -q -m "Site dosyaları eklendi"

Not: Sunucuda Git çağrılarında GIT_DIR belirtmek gereklidir çünkü Git dosyaları site dosyalarından ayrı bir yerde saklanmaktadır.

Uzak site.git deposu güncel hale geldikten sonra, ekip arkadaşlarınız kendi yerel kopyalarını klonlayabilirler:

git clone -o site ssh://user2_login@example.com/path/to/site.git

Eğer Genoa dalını kullanıyorsanız, "-b genoa" argümanını ekleyin. Ayrıca Cotonti deposunu uzak depolar listesine de ekleyebilirler:

git remote add cotonti git://github.com/Cotonti/Cotonti.git

Sonrasında, aşağıda verilen komutlarla değişiklikleri çekebilir ve gönderebilirler.

#3. Yerel Kopyanızı ve Sitenizi Güncelleyin

Eğer yukarıda anlatıldığı gibi yerel ve uzak deponuzu yapılandırdıysanız, günlük çalışma düzeninizde aşağıdaki komutları kullanabilirsiniz.

Not: Eğer Siena yerine Genoa dalını kullanıyorsanız, verilen komutlardaki "master" kelimesini "genoa" ile değiştirin.

Cotonti deposundan en son değişiklikleri almak için:

git pull cotonti master

Güncellenmiş değişiklikleri sitenize uygulamak için:

git push site master

Çalışma arkadaşlarınızın siteye gönderdiği en son değişiklikleri almak için:

git pull site master

Git ile mutlu dağıtımlar!

#4. Referanslar


Henüz yorum yapılmamış
Yalnızca kayıtlı kullanıcılar yorum yapabilir