如何确定Git中更改行的唯一编号
执行以下操作会给我本地更改和文件的远程版本之间的行计数差异:
git diff --shortstat C:devSprint7 origin/master:C:devSprint7
示例结果:
18 files changed, 11 insertions(+), 8 deletions(-)
请问,如何计算唯一更改的行的总数?
例如,如果Login.jsp文件的第5行被删除,并且第5行被另一行(或字符串)替换(即删除和插入在第5行完成),我希望这被计为1改变的行。
我可以通过总结插入和删除从上面的命令中得到这个计数吗?
任何帮助将不胜感激。
  我在这里粘贴一个小shell脚本。  只需将git diff命令作为输入,休息将由脚本自行处理。 
#echo "Input Command : $1"
TOTAL_CHANGES_WITH_FILES="$($1 | grep '^+' | wc -l)"
TOTAL_CHANGED_FILES="$($1 | grep '^+++' | wc -l)"
RESULT=`expr ${TOTAL_CHANGES_WITH_FILES} - ${TOTAL_CHANGED_FILES}`
#echo "Total Changed Lines: ${RESULT}"
echo "${RESULT}"
  将此代码保存到文件changed_lines.sh并使用命令sh changed_lines.sh "git diff HEAD"运行此文件。  根据你的配置,用git diff C:devSprint7 origin/master:C:devSprint7替换"git diff HEAD" 。  这只会打印不。  改变的线条。  如果有什么不对。  请随意发表评论。  希望这可以帮助。 
上一篇: How to determine the unique number of changed lines in Git
