2011-01-24 18 views
5

Hem git hem de unix için yeniyim, bu yüzden lütfen. Ec2'de kurduğum bir depoda basit bir git sonrası alma kancası oluşturmaya çalışıyorum. Hooks klasöründe, herkese açık bir sitenin çalışma dizinini güncellemeye çalışan post-alma adlı bir dosyam var.Temel git kancalarını anlama

#!/bin/sh 

echo 'hi git' 
cd /home/www-data/web2py/applications/init 
sudo git checkout . 
sudo git pull 
echo 'done' 

Ancak itme sonrasında hiçbir şey olmuyor gibi görünüyor. Sitenin çalışma dizini güncellenmiyor ve git günlüğünü çalıştırdığımda hata belirtileri veya eko ifadelerim yok. Sanırım bir şey mi kaçırdım? Teşekkürler.

+1

Ben, bunun yerine git pull' 'arasında' git fetch' istediğini düşünüyorum. – Rudi

+0

@Rudi Bu konuda belki de bazı örneklerle genişleyebilir misiniz? Git çekimi kullanıyorum ve istediğim şekilde çalışıyor gibi görünüyor - değişikliklerimizi zorluyoruz ve genel site otomatik olarak güncelleniyor - ancak hala herhangi bir formda git getirme veya git dallarını kullanmadım Bu yüzden ilgili konuları iyi anlamıyorum. Ben iki kişilik bir ekibin parçasıyım ve temelde şu ana kadar dalısız-svn-kancalarla gitmeyi kullanıyoruz ve bu iş akışından memnun kaldım, ama ben çok daha iyiyim ve gitme avantajından yararlanmak istiyorum. ama hala kelime hazinesi yapmıyorum. Teşekkürler. – Dane

+0

git pull, yerel değişiklikleri yeni gelen öğelerle birleştirmeye çalışır. Webside klasöründe hiç kimse işlem yapmadığı sürece, bu sorun değil. Ancak birisi orada bir şeyler taahhüt ettiğinde, bir sonraki çekiş, gelen değişiklikleri yerel taahhütle birleştirmeye çalışacaktır. Bu birleştirme, çakışma nedeniyle başarısız olduğunda, klasör her çakışan dosyada çakışma işaretleri olan bir durumda kalır; bu muhtemelen istediğiniz gibi değildir. – Rudi

cevap

4

İlk: git günlüğü git ikili günlük değildir. :) İşlemleri ve revizyonlarını görmek için kullanılır.

"merhaba budala" ve yerde "yapılan" çıkışını görüyor musunuz? Benim tahminim senin kancanın yürütülebilir değil. chmod +x your_hook'u çalıştırın - Bu dosyayı yürütülebilir hale getirecektir. çekme yalnızca getirme yeni değişiklikleri alırken, daha yeni bir yerel kafa ile gelen kafa birleştirmeye çalışır beri

+0

Bingo. Çok teşekkürler. – Dane