git: 9front

Download patch

ref: 1599cea5bdda2f032d66eaedc17221ce32c9154c
parent: 396017d00c61e4745b62f3aaed61aa3cdd27a8e2
author: Ori Bernstein <ori@eigenstate.org>
date: Sun Jun 6 07:57:31 EDT 2021

git/branch: diff clean and dirty lists correctly

no spaces in our lists.

--- a/sys/src/cmd/git/branch
+++ b/sys/src/cmd/git/branch
@@ -66,13 +66,17 @@
 }
 basedir=`{git/query -p $base}
 dirtypaths=()
-cleanpaths=($modified $deleted)
 if(! ~ $#modified 0 || ! ~ $#deleted 0)
 	dirtypaths=`$nl{git/walk -cfRMA $modified $deleted}
-if(! ~ $#dirtypaths 0){
-	x=$nl^$cleanpaths
-	y=$nl^$dirtypaths
-	cleanpaths=`$nl{echo $"x$nl$"y | sort | uniq -u}
+if(! ~ $#modified 0 || ! ~ $#deleted 0)
+	dirtypaths=`$nl{git/walk -cfRMA $modified $deleted}
+if(~ $#dirtypaths 0)
+	cleanpaths=($modified $deleted)
+if not {
+	cleanpaths=()
+	for(p in $modified $deleted)
+		if(! ~ $p $dirtypaths)
+			cleanpaths=($cleanpaths $p)
 }
 
 echo $commit > .git/$new
--