2013-10-26 55 views
2

我想在svn存儲庫上收到更新的電子郵件通知。我知道標準的解決方案是使用鉤子,但是我沒有權限訪問存儲庫的主機。顛覆電子郵件提交通知沒有掛鉤

現在,我寫了一行一行的方式,每小時更新一次工作副本,如果存在新版本,請發郵件給我。然而,這是原始的,我想要一個解決方案,允許我過濾掉自己的提交,在電子郵件中提供diff,在修訂上運行命令以識別構建錯誤,並在構建被破壞時以不同方式通知我,等

是否已經存在一個乾淨的腳本提供電子郵件通知更新到SVN存儲庫而不依賴於掛鉤,我描述的功能的種類?

(我想一個命令行腳本或程序的Unix系統,免費爲言論自由。)

回答

0

我現在使用一堆自定義腳本來檢索SVN倉庫的最新版本,如果它高於先前看到的版本,則會通過電子郵件向我發送這些更改的差異。對於每個存儲庫,只有在第一次更改後發生更改時纔會觸發電子郵件,因此我不會爲我自己的更改而獲得差異,並且我也沒有針對其他人所做的更改連續獲得差異。具體而言,對於每個存儲庫,發送差異時,警報會靜音,直到腳本在存儲庫中看到我提交的提交,或者手動調用腳本以重新激活此存儲庫中的警報。我的腳本還會緩存SVN錯誤,並且只有在連續發生時纔會抱怨SVN錯誤,以避免每次出現阻止訪問存儲庫的暫時性網絡問題時收到一封郵件。

具體來說,我使用cron來定期調用腳本svn-poll-myrepos,該腳本在myrepos中註冊的所有SVN存儲庫上運行輪詢。腳本svn-poll按上述方式進行輪詢,腳本svn-poll-drop可以手動調用以重新激活警報。

1

如果您使用的是Windows,你可能要考慮使用CommitMonitor工具。

+0

這是一個Unix平臺,很可惜,這對我來說不是一個好選擇......感謝您的回答。 – a3nm

0

您也可以查看CI服務器。它們已經被設置爲輪詢一個源代碼庫,並且它們中的許多具有它們自己的通知系統。詹金斯是免費的,許多商業工具是免費的或便宜的供個人使用。

+0

是的,我同意我想要做的是在精神上類似於持續集成,但這似乎是一個非常重量級的解決方案。我很驚訝,似乎沒有一個小腳本可以配置爲發送合理的通知,也許嘗試一些理智檢查命令。 – a3nm