Re: [PATCH] Fix t6031 on filesystems without working exec bit
- From
Junio C Hamano <junio@pobox.com>
- Date
- May 19, 2008, 04:51 UTC
- Message-ID
- <7v7idqaocb.fsf@gitster.siamese.dyndns.org>
- In-Reply-To
- <20080518145727.GA3058@steel.home>
Alex Riesen <raa.lkml@gmail.com> writes:
Show 14 quoted lines
> diff --git a/t/t6031-merge-recursive.sh b/t/t6031-merge-recursive.sh > index c8310ae..f1c91c8 100755 > --- a/t/t6031-merge-recursive.sh > +++ b/t/t6031-merge-recursive.sh > @@ -12,8 +12,7 @@ test_expect_success 'mode change in one branch: keep changed version' ' > git add dummy && > git commit -m a && > git checkout -b b1 master && > - chmod +x file1 && > - git add file1 && > + git update-index --chmod=+x file1 && > git commit -m b1 && > git checkout a1 && > git merge-recursive master -- a1 b1 &&
I have to wonder if this is enough on a filesystem with usable executable bit. Has this been tested on both kinds of filesystems?
You aren't setting +x on work tree file anymore, but only flipping the bit inside the index before committing. Because of this change, after "b1" commit, work tree has a local modification relative to the commit (namely, reversion of chmod +x is in the work tree), which is different from the original test sequence. Doesn't this local modification interact with switching to a1 branch and what merge-recursive does?