ref: fb2e0a1987b33083e3e08fa0659f99534c56d6aa
parent: 9a69a2bf2a13d89a30d863dcb19198eef2f564a3
author: Ori Bernstein <[email protected]>
date: Sun Aug 22 21:22:04 EDT 2021
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.
--- a/sys/src/cmd/git/diff
+++ b/sys/src/cmd/git/diff
@@ -26,16 +26,22 @@
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 ''