2013-11-22 88 views
1

我是一個初學者的顛覆者。是否有可能使用linux命令以json格式獲取svn日誌輸出。實際上,我想查看一個文件的提交歷史。Svn日誌輸出json格式

我嘗試下面的命令:

svn log file:///var/svn/repository/test.txt 

輸出:

------------------------------------------------------------------------ 
r40166 | user1 | 2013-11-22 12:20:51 +0530 (Fri, 22 Nov 2013) | 1 line 

Removed whitespace 
------------------------------------------------------------------------ 
r40107 | user1 | 2013-11-21 14:24:16 +0530 (Thu, 21 Nov 2013) | 1 line 

Commited text file 
------------------------------------------------------------------------ 

有沒有什麼辦法讓JSON格式輸出?如果不是,有沒有辦法解析上面的輸出顯示爲表使用jQuery?

幫助將不勝感激。

回答

3

如果你還沒有注意到SVN有--xml輸出選項。我建議使用它,然後使用一些代碼將XML轉換爲JSON。你應該能夠找到很多的建議,如何做到這一點在線。比如這裏有一個Stack Overflow question about doing it in Python

0

一個建議會寫日誌命令的svn-hooks。可以在這裏找到針對Windows的svn鉤子的介紹 - http://blogs.wandisco.com/2011/11/10/an-introduction-to-subversion-hook-scripts-on-windows/。此外,對於Linux(用於預先提交)在這裏,但您可以擴展svn log命令的概念 - http://pear.php.net/manual/en/package.php.php-codesniffer.svn-pre-commit.php。 以類似的方式,您可以編寫一個shell腳本來將文本文件輸出轉換爲jSON格式。

+0

掛鉤真的不會對他有幫助。他們主要是爲了讓服務器端對提交的更改(例如預提交,pre-revprop更改)做出決定並在提交後觸發操作(例如提交後,修改後更改)。編寫一個將日誌數據轉換爲JSON的鉤子腳本不會比從客戶端執行更簡單。 –