Download raw body.
got ignore some .{cvs,git}ignore files
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
got ignore some .{cvs,git}ignore files