SVN taahhütlerinin e-posta bildirimleri [kapalı]


10

Nispeten anahtar teslim SVN check-in bildirim sistemi için herhangi bir tavsiyeniz var mı?

Değişen depo dosyalarının bir özeti ve gerçek farkların içeriği, belki de ViewVC'deki tam etkilenen kaynak dosyaya veya bir şeye bağlantılarla, bir geliştirme ekibinin tüm üyelerine e-posta ile gönderilmesine izin veren bir şey arıyorum. . Bu isteğe bağlıdır.

Kesinlikle gerçek diff / kod alıntıları düzgün bölümlere ayrılmasını istiyorum. Kimse bu şeylere bakmayacak (sanki en başından itibaren anlaşılmaz kod parçalarının büyük, pervasız bir dökümü ise ... Prensip olarak, sadece düzeltme numarasını, özeti, taahhüdü yapan kullanıcıyı ve etkilenen depo dosyalarının bir listesini görmek istiyorum.

Kendi yazmamın fizibilitesine bakmak için biraz zaman harcadım ve SVN'nin çeşitli olayları tam olarak bu şekilde yakalamak için "kancaları" olduğunu gördüğümde, iyi çalışan cilalı bir şey elde etmek oldukça ilgili bir görev gibi görünüyor. Bu etkiye yönelik açık kaynaklı paketlerin orada bulunduğundan oldukça emin olarak, herhangi birinizin bana hangilerinin iyi ve hangilerinin kötü olduğunu anlama zahmetinden kurtulmaya yardım edip edemeyeceğini merak ediyordum. Kurulumu oldukça kolay bir şey arıyorum ve çok fazla zaman gerektirmiyor; Gerçekten kapsamlı bir sistemin giriş ve çıkışlarını öğrenmek için zaman harcamak isterim, ama aslında gelişimi de yapmak zorundayım.

Hepinize şimdiden çok teşekkür ederim!

EDIT: Sourceforge bunu oldukça iyi yaptığını biliyorum. Bu iletileri sürekli olarak aldığım birkaç dev listesindeyim. Ama Sourceforge'u üzerinde çalıştığım projeler için kullanamıyorum.


Bunun gibi bir kanca kurmak isteyen herkes için bir ipucu: Bu, bilgi gizliliği yasalarının yaralanması olabilir (Almanya'da BDSG). Bunu kullanmaya dikkat edin!

Yanıtlar:


8

Kancalardan bahsetmeniz aslında cevaptan çok uzak değil. Subversion ile birlikte gelen, size hemen hemen ne verdiğinizi verecek olan command_email.pl ( içindekiler ) komutunu çalıştırmak için post-taahhüt kancasını kullanabilirsiniz . Posta sunucunuzu göstermesi için ince ayar yapmanız gerekir , ancak bu komut dosyasının üst kısmına yakın bir değişkendir. Ayrıca betiği çalıştırmak için Perl kurulu olmalıdır.

Sonradan kaydetme kancası, üzerinde çalıştığınız işletim sistemine bağlı olarak dosya adında farklılık gösterir. Bunu / hooks / alt klasöründe bulabilirsiniz . Linux için Windows'ta post-commit.bat iken sadece post-taahhüt . Tek yapmanız gereken, command_email.pl dosyasını çalıştırmak için bu dosyayı değiştirmek . İşte, post-commit.bat örneği:

@echo on
rem POST-COMMIT HOOK

set REPOS=%1
set REV=%2

C:\Perl64\bin\perl S:\SVNRepos\hooks\commit-email.pl %REPOS% %REV% -l C:\Temp\svnlook\commit-email.log

Ayrıca, Subversion kullanıcı adı yerine taahhüdün kimden geldiğini gösteren e-posta adresini göstermek için e-posta komut dosyamızda daha fazla değişiklik yaptım. Gönderilen e-postayı biraz daha kullanışlı hale getirir (gerçekten yanıtlayabilirsiniz).


Gelecekte başvurmak için: dosya türünü uzantıya göre belirlemeyen diğer sistemlerde (iyi, kesinlikle en azından Linux), kanca sadece adlandırılır post-commit. .batUzantıyı adın Windows sürümünden kaldırmanız yeterlidir.
David Z

David, yorumlarınız için teşekkürler. Cevabı buna göre ayarladım.
Pauk

2

Ben perl betiği ve denemedim, ancak Windows üzerinde çalışması gereken SVN-Notify kullanın . Sonradan güzel renkli diffs sağlamak için HTML :: ColorDiff kullanır.

Bu bana bir dev meslektaşı tarafından önerildi ve harika.



2

SVN monitörü muhtemelen istediğiniz şeydir.


Linux çalıştırıyorum, bu yüzden bağımsız bir Windows uygulaması çalışmayacak. Yine de öneriyi takdir ediyorum.
Alex Balashov

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.