Re: [msysGit] Re: Sparse checkout not working as expected (colons in filenames on Windows)
- From
Duy Nguyen <pclouds@gmail.com>
- Date
- Mar 25, 2015, 06:44 UTC
- Message-ID
- <CACsJy8CZPufnyjdx0Z+SuUNhQ58gvKQprY98V7EJnodHgeyK5A@mail.gmail.com>
- In-Reply-To
- <61604ca6e1c2c114f5b536be420ba73a@www.dscho.org>
On Wed, Mar 25, 2015 at 1:39 PM, Johannes Schindelin <johannes.schindelin@gmx.de> wrote:
Show 22 quoted lines
> Hi Duy, > > On 2015-03-25 01:46, Duy Nguyen wrote: >> On Wed, Mar 25, 2015 at 6:50 AM, Philip Oakley <philipoakley@iee.org> wrote: >> >>> That said, the final error (which I'd missed in the earlier post) is: >>> fatal: make_cache_entry failed for path 'ifcfg-eth0:0' >>> >>> This is on the Windows (pre-compiled msysgit at v1.9.5) Git bash, so could >>> be a catch path in that code for make_cache_entry (I've not checked the code >>> yet). So at the moment it doesn't look like sparse checkout can be used to >>> avoid colons in windows on-disk files based on the current code. >> >> Both of your commands below fail by the same function, verify_path() >> because of this msysgit commit 2e2a2d1 (NTFS: Prevent problematic >> paths from being checked out - 2014-12-10). I guess that check is a >> bit too strong, it should apply when new index entries are created >> from worktree (not from a tree).. > > Oh, right, that check needs some relaxing. But certainly in a different way: you *definitely* want to prevent attacks from the outside, and those originate from the *tree*. > > What we need to do instead is to relax the check to apply only if we are really going to write out that file, not when it is skipped.
Yeah. In fact if you do this, not checking out files that can't be or not safe to be checked out, then the ifcfg-eth0:0 problem that Phillip wanted to avoid using sparse checkout is also gone.
-- Duy