2010-04-29 58 views
4

我有一個運行顛覆的存儲庫。有些用戶沒有定期進行提交。我想每週向那些在上週沒有提交的人發出提醒。有沒有辦法確定每個用戶上次提交日期的時間是?如何找出每個用戶的最後一次提交是否被顛覆?

+2

我敢肯定是有辦法做到這一點(別人就能建議如何),但它使我緊張地聽到「人不犯,我們應更頻繁地做。」我可以理解你不希望他們懶惰,但很多編程都是關於思考和理解問題。他們可能也有分支,所以他們在那裏進行而不是到樹幹。我想我只是說要小心這樣做的原因。程序員也喜歡被信任。 – JasCav 2010-04-29 18:34:40

+0

如果這是一個每週的事情,它不會。也許每週都太多了。每月如何? – llaskin 2010-04-29 19:12:15

回答

3

沒有試圖解決您是否應該做不做,下面會給你唯一的用戶列表誰DATE1DATE2

svn log -r'{DATE1}:{DATE2}' | grep -E '\|' | cut -f2 -d'|' | sort | uniq 

之間的承諾在哪裏DATE1DATE2被格式化爲yyyymmdd

我相信,一旦你有誰犯用戶的列表,你就會知道是誰做還不如,你可以對一個完整列表(例如diff committed_users.txt all_users.txt)進行比較。

4

當心你測量什麼,因爲你會在黑桃接受它。

兩種技術是可能的。你可以編寫一個小程序來調用「svn log」並提取相關的開發人員名字和最後的提交時間。您可以將腳本添加到相應的提交後掛鉤,該掛鉤可以從每週重新生成的電子郵件列表中刪除開發人員,也可以在稍後處理的文件中替換開發人員的最後提交時間。

的主要問題是,通過測量提交,你會得到更多的提交。遊戲系統的玩家將會大大降低提交的質量。我預見評論只會在不久的將來承諾或承諾最微不足道的性質。

+3

+1「當心你衡量的東西......」 – 2010-04-29 18:46:14

+3

雖然我通常與你不想跟蹤提交過宗教或壞(甚至懷疑)代碼力提交同意這一觀點,我知道我的工作大量的項目開發者花了數週甚至數週的時間沒有提交或更新他們的代碼,在測試截止日期之前承諾,並因此在關鍵時間導致了廣泛的痛苦集成失敗。所以我同情至少需要關注哪些開發人員沒有提交的需求,以便開發人員可以找出他們爲什麼沒有提交。 – 2010-04-29 18:51:38

+0

這不是每週一次的電子郵件。這更多的是Jim討論的情況,碰撞和非交付問題經常發生,並試圖找到解決問題的方法。 – llaskin 2010-04-29 19:11:47

相關問題