"GOT", but the "O" is a cute, smiling pufferfish. Index | Thread | Search

From:
Sebastien Marie <semarie@online.fr>
Subject:
Re: got ignore some .{cvs,git}ignore files
To:
gameoftrees@openbsd.org
Date:
Tue, 23 Jun 2020 10:50:42 +0200

Download raw body.

Thread
On Tue, Jun 23, 2020 at 10:19:10AM +0200, Stefan Sperling wrote:
> >
> > Please note that it could be also exposed with got repository itself:
> > 
> > $ cd got
> > $ cat .gitignore
> > **/obj
> > $ got st
> > M  regress/cmdline/status.sh
> > $ got st libexec/got-fetch-pack
> > ?  libexec/got-fetch-pack/obj/error.d
> > ?  libexec/got-fetch-pack/obj/error.o
> > ?  libexec/got-fetch-pack/obj/got-fetch-pack
> > ?  libexec/got-fetch-pack/obj/got-fetch-pack.d
> > ?  libexec/got-fetch-pack/obj/got-fetch-pack.o
> > ?  libexec/got-fetch-pack/obj/inflate.d
> > ?  libexec/got-fetch-pack/obj/inflate.o
> > ?  libexec/got-fetch-pack/obj/object_parse.d
> > ?  libexec/got-fetch-pack/obj/object_parse.o
> > ?  libexec/got-fetch-pack/obj/path.d
> > ?  libexec/got-fetch-pack/obj/path.o
> > ?  libexec/got-fetch-pack/obj/privsep.d
> > ?  libexec/got-fetch-pack/obj/privsep.o
> > ?  libexec/got-fetch-pack/obj/sha1.d
> > ?  libexec/got-fetch-pack/obj/sha1.o
> > 
> > the "obj" directory is shown whereas present in .gitignore
> 
> Yes, this is a bug. The evaluation of ignore lists should not depend on
> the status path argument. However, this is not the problem which your test
> case patch is trying to reproduce, is it? Our ignore test cases do not
> cover the case of running status with a path argument! We should fix this.

ah... so the change I made on regress wasn't the right one to expose my problem :)

new diff for regress.
-- 
Sebastien Marie


diff c34ec41754978e41240e8aedd4e5d3a9e6362635 /home/semarie/repos/openbsd/got
blob - 5abbce9475bb8bd2f1cbb3e33113883173026f03
file + regress/cmdline/status.sh
--- regress/cmdline/status.sh
+++ regress/cmdline/status.sh
@@ -496,10 +496,11 @@ function test_status_cvsignore {
 
 	echo "unversioned file" > $testroot/wt/foo
 	echo "unversioned file" > $testroot/wt/foop
+	echo "unversioned file" > $testroot/wt/epsilon/foo
 	echo "unversioned file" > $testroot/wt/epsilon/bar
 	echo "unversioned file" > $testroot/wt/epsilon/boo
 	echo "unversioned file" > $testroot/wt/epsilon/moo
-	echo "foo" > $testroot/wt/.cvsignore
+	echo "**/foo" > $testroot/wt/.cvsignore
 	echo "bar" > $testroot/wt/epsilon/.cvsignore
 	echo "moo" >> $testroot/wt/epsilon/.cvsignore
 
@@ -516,6 +517,20 @@ function test_status_cvsignore {
 		test_done "$testroot" "$ret"
 		return 1
 	fi
+
+	echo '?  epsilon/.cvsignore' > $testroot/stdout.expected
+	echo '?  epsilon/boo' >> $testroot/stdout.expected
+	(cd $testroot/wt && got status epsilon > $testroot/stdout)
+
+	cmp -s $testroot/stdout.expected $testroot/stdout
+	ret="$?"
+	if [ "$ret" != "0" ]; then
+		diff -u $testroot/stdout.expected $testroot/stdout
+		test_done "$testroot" "$ret"
+		return 1
+	fi
+		
+	
 
 	echo '?  .cvsignore' > $testroot/stdout.expected
 	echo '?  epsilon/.cvsignore' >> $testroot/stdout.expected