All of lore.kernel.org
 help / color / mirror / Atom feed
From: Durham Goode <durham@fb.com>
To: "Junio C Hamano" <gitster@pobox.com>,
	"Nguyễn Thái Ngọc Duy" <pclouds@gmail.com>
Cc: <git@vger.kernel.org>, <mitrandir@fb.com>
Subject: Re: [PATCH 3/2] dir.c: fix dir re-inclusion rules with "NODIR" and "MUSTBEDIR"
Date: Thu, 17 Mar 2016 21:51:45 -0700	[thread overview]
Message-ID: <56EB8961.70302@fb.com> (raw)
In-Reply-To: <xmqqfuvoy89q.fsf@gitster.mtv.corp.google.com>

On 3/17/16 4:49 PM, Junio C Hamano wrote:
> Thanks for these 5 patches, two of which need to be discarded ;-).
> I think you can pick either one of 1/2, pick the one that says
> "non-NULL" (as opposed to "something") in the log message for 2/2.
>
> Durham, does it fix your issues if you apply the 1/2 and 2/2 (but
> not 3/2) on top of 2.8-rc?
>
> Duy, how comfortable are you with the idea of including this two in
> 2.8 final?  We have long passed the final -rc, and while it is
> probably OK to prolong the cycle and do another -rc, we cannot keep
> going like "oops, there is another thing discovered by somebod new"
> forever.
>
> Thanks.
Patches 1+2 fix the repro steps in the report, yes.  But I've found 
another case that produces different results in 2.8 than in 2.7:

Given a repo with files:

dir1/dir2/show/file
dir1/dir2/hide/file

and a sparse-checkout of

/*
/dir1/dir2/show
!/dir1/dir2/

the working copy still contains dir1/dir2/hide/file when run from 
2.8.0-rc2. In git 2.6 and 2.7.3 it does not show up (which is the 
expected behavior, from what I understand of the docs).  Repro script is 
below.  Notice, the 'dir2/' part of the paths is important.  If I drop 
that directory, the issue doesn't repro.


#!/bin/bash

set -x
rm -rf sparse-test
GIT=git
$GIT init sparse-test
cd sparse-test
$GIT config --add core.sparsecheckout true

mkdir -p dir1/dir2/show dir1/dir2/hide
touch dir1/dir2/show/file1
touch dir1/dir2/hide/file2

$GIT add .
$GIT commit -m "initial commit"
$GIT read-tree --reset -u HEAD

mkdir .git/info
cat > .git/info/sparse-checkout <<EOF
/*
/dir1/dir2/show
!/dir1/dir2/
EOF
$GIT read-tree --reset -u HEAD

ls -R dir1/dir2
set +x
echo
echo expected: see only "dir1/dir2/show/file"
echo actual: see "dir1/dir2/hide/file" as well

  parent reply	other threads:[~2016-03-18  4:51 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-03-17  0:09 bug: sparse config interpretation incorrectness in 2.8.0-rc2 Durham Goode
2016-03-17  0:56 ` Duy Nguyen
2016-03-17  6:49   ` Durham Goode
2016-03-17  7:51   ` Junio C Hamano
2016-03-17 10:17     ` Duy Nguyen
2016-03-17 13:04       ` Johannes Schindelin
2016-03-17 13:20         ` Duy Nguyen
2016-03-17 13:46           ` Johannes Schindelin
2016-03-17 14:00             ` Duy Nguyen
2016-03-18 15:49               ` Johannes Schindelin
2016-03-17  7:22 ` Junio C Hamano
2016-03-17 17:51   ` Durham Goode
2016-03-17 12:45 ` [PATCH 1/2] dir.c: fix bug in 'nd/exclusion-regression-fix' topic Nguyễn Thái Ngọc Duy
2016-03-17 12:45   ` Nguyễn Thái Ngọc Duy
2016-03-17 12:54     ` [PATCH 3/2] dir.c: fix dir re-inclusion rules with "NODIR" and "MUSTBEDIR" Nguyễn Thái Ngọc Duy
2016-03-17 23:49       ` Junio C Hamano
2016-03-18  0:15         ` Duy Nguyen
2016-03-18  5:40           ` Junio C Hamano
2016-03-18  5:51             ` Duy Nguyen
2016-03-18  5:58             ` Eric Sunshine
2016-03-18  4:51         ` Durham Goode [this message]
2016-03-18  5:40           ` Duy Nguyen
2016-03-18  6:21             ` Durham Goode
2016-03-18  6:28               ` Duy Nguyen
2016-03-18 18:00             ` Junio C Hamano
2016-03-18 18:37               ` Extending this cycle by a week and reverting !reinclusion topic Junio C Hamano
2016-03-19  1:03               ` [PATCH 3/2] dir.c: fix dir re-inclusion rules with "NODIR" and "MUSTBEDIR" Duy Nguyen
2016-03-17 12:45   ` [PATCH 2/2] dir.c: correct "stuck" logging logic Nguyễn Thái Ngọc Duy
2016-03-17 12:45   ` Nguyễn Thái Ngọc Duy
2016-03-18 17:38   ` [PATCH 1/2] dir.c: fix bug in 'nd/exclusion-regression-fix' topic Junio C Hamano

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=56EB8961.70302@fb.com \
    --to=durham@fb.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=mitrandir@fb.com \
    --cc=pclouds@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.