From b08daf3c0cb75fbbe7998f043b6d2bddd18cb3cf Mon Sep 17 00:00:00 2001 From: Alejandro Colomar Date: Sun, 9 May 2021 23:38:57 +0200 Subject: [PATCH] scripts/bash_aliases: man_gitstaged(): Script around a porcelain git command The output of 'git status' is not stable. The more stable 'git status --porcelain' is more complex, and scripting around it would be more complex. However, 'git diff --staged --name-only' produces the output that we were lookiong for. Reported-by: Jakub Wilk Signed-off-by: Alejandro Colomar Signed-off-by: Michael Kerrisk --- scripts/bash_aliases | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/scripts/bash_aliases b/scripts/bash_aliases index 8cedc4efc..d9b6047d1 100644 --- a/scripts/bash_aliases +++ b/scripts/bash_aliases @@ -153,13 +153,11 @@ function pdfman() function man_gitstaged() { - git status \ - |sed "/Changes not staged for commit:/q" \ - |grep -E "^\s*(modified|deleted|new file):" \ - |sed "s/^.*:\s*/, /" \ + git diff --staged --name-only \ + |sed "s/$/, /" \ |sed "s%man[1-9]/%%" \ |tr -d '\n' \ - |sed "s/^, //" + |sed "s/, $//" } ########################################################################