2016-03-22 15 views
0

Sunucu tarafında güncelleme kancası yazıyorum. Başarılı bir şekilde yaptım ve kısıtlı.
1. Dosya boyutu
2. Dosya uzantıları
Şimdi ne yapmak istediğimi, iletiyi denetlemek ve yalnızca içerik dizesini kabul etmek için "INFO:" deyin.Git Kancaları: Uzak depo, yalnızca belirli bir ileti dizisi içeriyorsa iletmeyi kabul etmelidir

update kancasında git log ile kontrol ettim, ancak zaten kabul edilen sonuçları verir.
Depodaki değişiklikleri kabul etmeden/itmeden önce iletiyi kontrol etmek için ne yapmalıyım?

cevap

1

Sen resmi git web sitesinden bu sitede bir göz atabilirsiniz: Customizing Git - An Example Git-Enforced Policy

Çok fazla sizinki gibi bir kullanım senaryosunu sahiptir. Özellikle bu kısım:

$regex = /\[ref: (\d+)\]/ 

# enforced custom commit message format 
def check_message_format 
    missed_revs = `git rev-list #{$oldrev}..#{$newrev}`.split("\n") 
    missed_revs.each do |rev| 
    message = `git cat-file commit #{rev} | sed '1,/^$/d'` 
    if !$regex.match(message) 
     puts "[POLICY] Your message is not formatted correctly" 
     exit 1 
    end 
    end 
end 
check_message_format 
+0

Çalışıyor !! 'git kedi dosya $ refname' taahhüt, ne istiyorum! – Tejas

İlgili konular