From fb2e0a1987b33083e3e08fa0659f99534c56d6aa Mon Sep 17 00:00:00 2001 From: Ori Bernstein Date: Mon, 23 Aug 2021 01:22:04 +0000 Subject: [PATCH] git/diff: clean up diffs We were overzealous about showing the changed header, as well as setting a junk variable for files that didn't exist; fix both. --- sys/src/cmd/git/diff | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/sys/src/cmd/git/diff b/sys/src/cmd/git/diff index 64206c4a7..28e69d660 100644 --- a/sys/src/cmd/git/diff +++ b/sys/src/cmd/git/diff @@ -26,16 +26,22 @@ fn lsdirty { git/query -c $commit HEAD | subst '^..' } +showed=() mntgen /mnt/scratch bind $branch/tree/ /mnt/scratch/a bind . /mnt/scratch/b -echo diff `{git/query $commit} uncommitted for(f in `$nl{lsdirty | sort | uniq}){ + if(~ $#showed 0){ + echo diff `{git/query $commit} uncommitted + showed=1 + } cd /mnt/scratch + a=a/$f + b=b/$f if(! test -f a/$f) - orig=/dev/null + a=/dev/null if(! test -f b/$f) - f=/dev/null - diff -u a/$f b/$f + b=/dev/null + diff -u $a $b } exit '' -- 2.44.0