As notificações por email do SVN confirmam [fechado]


10

Você tem alguma recomendação para um sistema de notificação de entrada de SVN relativamente pronto para uso?

Estou procurando por algo que permita que um resumo dos arquivos do repositório seja alterado e o conteúdo das diferenças reais seja enviado a todos os membros de uma equipe de desenvolvimento por e-mail quando ocorrerem confirmações, talvez com links para o arquivo de origem totalmente afetado no ViewVC ou algo assim . Isso é opcional.

Definitivamente, quero que os trechos diff / code reais sejam perfeitamente compartimentados. Ninguém vai olhar para essas coisas (como se elas fossem assim :-) se for apenas um grande e imprudente despejo de fragmentos de código incompreensíveis desde o início. Em princípio, eu só quero ver o número da revisão, o resumo, o usuário que fez o commit e uma lista dos arquivos de repositório afetados.

Passei um pouco de tempo analisando a viabilidade de escrever por conta própria, e enquanto vejo que o SVN tem "ganchos" para capturar vários eventos exatamente dessa maneira, conseguir algo polido que funcione bem parece ser uma tarefa bastante envolvida. Sendo bastante certo de que existem pacotes de código-fonte aberto para esse efeito, fiquei pensando se algum de vocês poderia me ajudar a me poupar do trabalho de descobrir quais são bons e quais são ruins. Estou procurando algo razoavelmente fácil de configurar e não exigindo muito tempo; Adoraria passar o tempo aprendendo os meandros de um sistema realmente abrangente, mas também preciso fazer o desenvolvimento.

Agradecemos antecipadamente a todos!

EDIT: Eu sei que o Sourceforge faz isso muito bem. Estou em várias listas -dev onde recebo constantemente essas mensagens. Mas não posso realmente usar o Sourceforge para os tipos de projetos em que estou trabalhando.


Uma dica para quem deseja configurar um gancho como este: Isso pode ser uma lesão das leis de privacidade da informação (BDSG na Alemanha). Tenha cuidado ao usar isso!

Respostas:


8

Sua menção de ganchos não está muito longe da resposta. Você pode usar o gancho de confirmação de postagem para executar o commit_email.pl ( conteúdo de ) , incluído no Subversion, que fornecerá praticamente o que você procura . Precisará de ajustes para apontar para o seu servidor de email, mas essa é apenas uma variável próxima à parte superior do script. Você também precisará do Perl instalado para executar o script.

O gancho de confirmação da postagem difere no nome do arquivo, dependendo do sistema operacional em que você está executando. Você o encontrará na subpasta / hooks / . Para Linux, basta post-commit, enquanto no Windows, post-commit.bat . Tudo o que você precisa fazer é modificar esse arquivo para executar o commit_email.pl . Abaixo está um exemplo post-commit.bat:

@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

Além disso, fiz outras alterações em nosso script de email para mostrar o endereço de email de quem era a confirmação, em vez do nome de usuário do Subversion. Isso torna o email enviado um pouco mais útil (você pode realmente responder a ele).


Para referência futura: em outros sistemas que não determinam o tipo de arquivo por extensão (bem, definitivamente pelo menos Linux), o gancho é apenas nomeado post-commit. Basta remover a .batextensão da versão do Windows para o nome.
David Z

David, obrigado por seus comentários. Eu ajustei a resposta de acordo.
Pauk

2

Eu uso o SVN-Notify , que é um script perl e deve ser executado no Windows, embora eu não tenha tentado. Ele usa HTML :: ColorDiff para fornecer boas diferenças de cores pós-confirmação.

Isso me foi recomendado por um colega de desenvolvimento, e é ótimo.




Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.