2011-12-01 51 views
0


我想讓svn在每次提交後發送一封電子郵件,其中包含有關修訂,更改文件等的信息。我使用svn log命令獲取要發送的數據。 我編輯了提交後模板,它工作正常,但只有當我從終端調用它或當我提供--username和--password時。如果它被svn調用,我會收到一封空郵件。對svn log命令的權限有問題嗎?任何想法如何使其工作?svn post-commit發送電子郵件

+0

不[svnnotify(http://search.cpan.org/~dwheeler/SVN-Notify-2.83/lib/SVN/Notify.pm)做的工作更輕鬆您? – ShiDoiSi

+0

我已經看過,但如果有一種方法可以使其工作而無需添加任何外部庫,那麼我想先嚐試一下。 –

回答

0

掛鉤作爲本地服務帳戶運行。

一個解決方案是使用您自己的帳戶登錄並使用SVN一次提供您的憑據。 SVN會緩存你的憑證。然後將您的ApplicationData/Subversion文件夾複製到 %systemroot%\ Documents and Settings \ LocalService \ ApplicationData \ Subversion文件夾(在Windows 2003服務器中)。這會將您的加密憑據從緩存複製到localService的緩存。

我使用Apache的身份驗證來限制對服務器的訪問。如果你這樣做,那麼另一種解決方案是使用URL:File://而不是http://來指定存儲庫路徑。該類型的存儲庫訪問不需要身份驗證。

+0

以上都不適合我。第一個不是因爲我在Linux上工作。第二個,因爲我確實需要認證,但我希望它以某種方式繼承了svn commit所做的認證。 –