回答
要顯示在第10名的條目:
svn log -r '{2010-12-10}:{2010-12-11}'|sed -n '1p; 2,/^-/d; /username/,/^-/p'
的SVN命令獲取提交在該日期範圍
擊穿sed命令的:
-n
- 不要自動打印。1p
- 打印第一行(---標題)。2,/^-/d;
- 刪除從第二個到結束---標題的所有內容。這刪除了第一個條目,IIRC是在一天開始時的午夜時分的最近一次提交(即,它實際上不在該範圍內,並且可能在過去很長)。/username/,/^-/p
- 打印一切從用戶名開始(一個正則表達式匹配你感興趣的用戶)收盤---頭部(這個動作反覆)
@pyfunc它爲我工作。 'grep'的問題在於你只能得到每個日誌的第一行 – ajitam 2010-12-10 09:48:16
誰對此投了票?有用。我知道,因爲我(發佈前)和ajitam都對它進行了測試。它可能需要GNU sed。 – 2010-12-10 09:50:06
@ajitam:沒關係。我的理解是基於你提供的。我相信你不想要一個餅乾切割機解決方案。由於你沒有提供任何細節。我知道你正在尋找在特定日期提交。這是我提供的。從那裏建立就足夠了。請參閱AgentConundrum的答案。在提供部分答案時,我得到兩個否定的選票。非常有趣。 Matthew Flaschen的回答甚至不適合我。所以我想grep和休息需要專門建立。 AgentConundrum的答案更爲通用,符合我的建議。 – pyfunc 2010-12-10 09:53:27
假設你是一個Linux系統上,你可以做這樣的事情:
svn log -r {YYYY-MM-DD}:{YYYY-MM-DD} | grep username | cut -d " " -f 1 | tail -n +2 | while read revision; do svn log -r $revision; done
這是什麼東西做的是使用svn日誌來獲得所有日誌某一天,然後切割輸出,使得它僅僅是一個版本號的列表。 [編輯:添加tail -n +2
以截斷第一次修訂 - 正如@Matthew所述,第一行將是{that_day}
之前的最新修訂版] while循環然後遍歷修訂號的每一行,並將其傳遞到svn log
。另外,請記住{YYYY-MM-DD}指的是當天的開始的午夜,因此要運行一整天,您應該運行它以獲得{that_day}:{the_following_day}
。
希望有幫助!
(另外,抱歉的混亂提早了--username
。我以前從來沒有使用它,因爲我的本地的svn只有一個用戶(我),它看上去像它的工作,當它真不是。)
不幸的是,這與pyfunc的答案有相同的日期問題。它包含* *之前的提交*'that_day'。而且,這樣做效率不高,因爲每次調用svn日誌都需要一個進程,一個網絡連接以及一個可能的密碼提示。 – 2010-12-10 09:57:29
@Matthew:感謝您指出「最後一次提交」問題。我更新了我的解決方案。你絕對正確的認爲,這會吸引網絡或者使用未緩存的憑證。 – AgentConundrum 2010-12-10 10:08:12
@Agent,+1,感謝您的更新。你說得對,儘管存在性能問題,但它更具可讀性(尤其是如果你不熟悉sed)。 – 2010-12-10 10:13:52
如果你在Linux上的最佳解決方案,讓整個日期的日誌如下:
svn log -r {start date}:{end date} -v | sed -n ‘/username/,/—–$/ p’
如果您想要的用戶名的基礎上,指定日期範圍內,然後與檢索SVN日誌你需要使用svn log -r {startDate}:{endDate}
這是管道sed
用戶命令我。
svn log --verbose --search user_name --revision {YYYY-MM-DD}:{YYYY-MM-DD}
任何平臺
- 1. 在Java中獲取特定日期範圍的SVN日誌
- 2. 某個用戶的SVN活動日誌?
- 3. 如何獲取特定日期的日曆活動?
- 4. Alfresco用戶活動日誌
- 5. Bitbucket用戶活動日誌
- 6. 本地獲取SVN日誌
- 7. Magento:獲取特定日期的訪問者日誌
- 8. Google日曆:獲取活動日期?
- 9. 獲取特定工作日的日期
- 10. 如何在特定日期或日期範圍內獲取SVN修訂版號
- 11. PHP獲取特定日期
- 12. 獲取日期爲特定日期是當天的日期後
- 13. 魚殼 - 用戶SVN日誌
- 14. 獲取以前的SVN更新日誌
- 15. 如何使用PHP獲取特定日期的日期
- 16. 在mySQL中獲取特定日期的具體日期
- 17. 在特定日期後獲取用戶的所有推文
- 18. Google日曆 - 從特定日曆中獲取活動
- 19. PHP Google日曆從特定日曆中獲取活動
- 20. SVN日誌錯誤日期不匹配
- 21. 從Google AnalyticsAPI獲取活動的日期
- 22. 使用MySql獲取特定日期
- 23. 獲取特定日期在一個月
- 24. 通過日期獲取顛覆日誌
- 25. 設計:獲取用戶上一次活動的日期
- 26. 使用oracle從一系列日期中獲取特定日期
- 27. 使用當前日期作爲參考獲取特定日期
- 28. 如何使用特定日期格式獲取日期差異?
- 29. 如何在日期範圍內獲取所有「特定日期」
- 30. 用戶活動日誌Joomla,Wordpress或Drupal
如果你在Windows上,TortoiseSVN的,您可以通過過濾其日誌輸出(除其他事項外)的用戶名。如果你使用的是Unix,我毫不懷疑有一種方法可以編寫一個腳本,用於在'svn log -revision {startdate}:{enddate}中爲每個版本號執行'svn log -rNNNNN'。 grep ajitam',儘管我在shell腳本方面做得太弱了。 – sbi 2010-12-10 09:16:53