基本上我想在每次提交之後獲取版本庫中的代碼行數。如何繪製git repo的代碼行歷史記錄?
我發現的唯一的(真糟糕)的方法是使用git filter-branch
運行wc -l *
,而且每次提交運行git reset --hard
的腳本,然後運行wc -l
爲了使它更清楚一點,當刀具運行時,它會輸出第一次提交的代碼行,然後輸出第二次提交的代碼行等等。這就是我想要的工具輸出(作爲一個例子):
[email protected]:~/$ gitsloc --branch master
10
48
153
450
1734
1542
我和紅寶石「混帳」庫玩耍了,但我發現用在一個diff的.lines()
方法,最接近其似乎應該給所添加的行(但不:當你刪除例如線返回0)
require 'rubygems'
require 'git'
total = 0
g = Git.open(working_dir = '/Users/dbr/Desktop/code_projects/tvdb_api')
last = nil
g.log.each do |cur|
diff = g.diff(last, cur)
total = total + diff.lines
puts total
last = cur
end
在你的代碼中`err`將總是`None`。 – jfs 2009-01-14 13:06:03
`如果不是line.strip():continue`可能會更健壯。 – jfs 2009-01-14 13:08:22