鉴于两个项目版本,我想计算代码流失度量。
实施例
输入:两个文件夹,包含两个版本的C和Header文件 该项目
输出:每个文件中添加/更改/删除的行数列表
我尝试了一些工具,即BeyondCompare和WinMerge。问题是,第一个要求所有文件都在同一个目录中,否则你只能比较它们但没有得到指标,第二个主要是可视化工具,也没有给我指标。
答案 0 :(得分:2)
您可能考虑的其中一个工具是WebDiff
答案 1 :(得分:1)
对于.NET代码,这样的任务可以通过NDepend Code Query LINQ (CQLinq)查询来实现,例如(注意你如何选择代码指标):
from t in JustMyCode.Types
where t.IsPresentInBothBuilds() &&
t.CodeWasChanged() // Only match types where code has been changed
// between the two versions
let tOld = t.OlderVersion()
select new { t,
newLoc = t.NbLinesOfCode,
oldLoc = tOld.NbLinesOfCode,
newNbMethods =t.Methods.Count(),
oldNbMethods =t.Methods.Count(),
newNbFields =t.Fields.Count(),
oldNbFields =t.Fields.Count(),
}
答案 2 :(得分:0)
您的版本是否存储在版本控制系统(例如SVN,Git)中?如果是,那么您可以通过查看版本控制系统日志(已经添加/更改/删除行)来计算您的流失度量标准,即使这两个版本不是连续提交。