git 在工程下打开git bash
//替换username,查看个人代码量
git log --author="username" --pretty=tformat: --numstat | awk '{ add += $1; subs += $2; loc += $1 - $2 } END { printf "added lines: %s, removed lines: %s, total lines: %s\n", add, subs, loc }' -
效果如下:
如果不看用户只要把--author去了
git log --pretty=tformat: --numstat | awk '{ add += $1; subs += $2; loc += $1 - $2 } END { printf "added lines: %s, removed lines: %s, total lines: %s\n", add, subs, loc }' -
//如果工程是多个人开发的,那么统计每个人增删行数
git log --format='%aN' | sort -u | while read name; do echo -en "$name\t"; git log --author="$name" --pretty=tformat: --numstat | awk '{ add += $1; subs += $2; loc += $1 - $2 } END { printf "added lines: %s, removed lines: %s, total lines: %s\n", add, subs, loc }' -; done
效果如下:
为啥要看代码量,之前 因为发现一个开源工程有我想要的功能,想把功能分离出来,也没看代码量估计要一周,结果一周没搞定后来看了一下代码量足有50万行,要剥离相关功能代码得重新评估了:(
另外 viual studio中统计代码量的方法
按ctrl+shitf+f
在弹出的窗口中进行以下步骤:
如果是c#工程文件类型换为:
*.cs;*.vb;*.resx;*.xsd;*.wsdl;*.htm;*.html;*.aspx;*.ascx;*.asmx;*.svc;*.asax;*.config;*.asp;*.asa;*.cshtml;*.vbhtml;*.razor;*.css;*.xml;*.xaml
如果是c++工程文件类型换为:
*.c;*.cpp;*.cxx;*.cc;*.tli;*.tlh;*.h;*.hh;*.hpp;*.hxx;*.hh;*.inl;*.ipp;*.rc;*.resx;*.idl;*.asm;*.inc;*.vcxproj
输入查找内容
^b*[^:b#/]+.*$
选择查找范围为整个解决方案或当前项目,或者指定目录
选中使用正则表达式
设置查找以下文件类型为项目包含的文件类型。
点击查找全部开始统计。
接下VS会逐行检索是否满足正则表达式并计数,完成后便可以在最下方的匹配行看到项目的代码行数啦~
切记一定在评估工作量前,看看工程代码量,不看代码量就评估那是自讨苦吃!