Как сделать так, чтобы git show --stat перечислял только количество измененных файлов, вставок и удалений? - PullRequest
0 голосов
/ 30 ноября 2018

Я использую следующую команду Git для получения данных о конкретном коммите:

  git show <revhash> --stat >> ouput.csv

Это вывод, который я получаю:

  commit 7bc745a289cf68cb2eba647bbfba9e9ec06eb771
  Author: Stefan Bodewig <bodewig@apache.org>
  Date:   Mon Jun 24 15:12:57 2013 +0000

post-process generated javadocs as workaround for CVE-2013-1571 - based on Maven patch by Uwe Schindler - PR 55132

git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@1496083 13f79535-47bb-0310-9956-ffa450edef68

   CONTRIBUTORS                                       |   1 +
   WHATSNEW                                           |   9 ++
   contributors.xml                                   |   4 +
   manual/Tasks/javadoc.html                          |  12 +++
   .../org/apache/tools/ant/taskdefs/Javadoc.java     | 111 ++++++++++++++++++++-
   .../ant/taskdefs/javadoc-frame-injections-fix.txt  |  37 +++++++
   6 files changed, 171 insertions(+), 3 deletions(-)

Я хотел бы получитьсписок файлов, измененных таким образом без других метаданных, следующим образом:

  1 file changed, 1 insertion(+), 1 deletion(-)

Я знаю, что могу использовать --shortstat, но он по-прежнему дает другую информацию, такую ​​как хэш коммита, дата и т. д.

Я думаю, что в git такого не может быть, но какой тогда самый разумный способ разобрать вывод последней строки?

Ответы [ 3 ]

0 голосов
/ 30 ноября 2018

Я бы использовал --format

git show <commit> --shortstat --format="" >>output.csv
0 голосов
/ 30 ноября 2018
git diff --shortstat HEAD^!

Суффикс ^! в основном говорит "сравнить HEAD с родительским элементом HEAD

0 голосов
/ 30 ноября 2018

Используйте tail, чтобы отключить все, кроме последней строки 1:

git show <commit> --shortstat | tail -n1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...