From: "René Scharfe" <rene.scharfe@lsrfire.ath.cx>
To: Josh Rowe <Joshua.Rowe@microsoft.com>
Cc: "git@vger.kernel.org" <git@vger.kernel.org>, msysgit@googlegroups.com
Subject: Re: FW: Windows. Git, and Dedupe
Date: Tue, 19 Mar 2013 22:08:13 +0100 [thread overview]
Message-ID: <5148D3BD.4040608@lsrfire.ath.cx> (raw)
In-Reply-To: <02803146dc74414191fab53b0de33fa1@BLUPR03MB019.namprd03.prod.outlook.com>
Am 18.03.2013 22:20, schrieb Josh Rowe:
> On Windows with an NTFS volume with Deduplication enabled, Git
> believes that deduplicated files are symlinks. It then fails to be
> able to do anything with the file. This can be repro-ed by creating
> an NTFS volume with dedup, creating some duplicate files, verifying
> that a few files are deduped, and trying to add and commit the files
> via git.
Both Single Instance Storage[1] and Data Deduplication[2] (introduced
with Windows Server 2012) seem to be server-only features. How about
keeping regular git repositories with checked-out files on client
disks and use the server only for bare repositories (without working
tree)?
When I tried to add a symbolic link created with mklink on Windows 8,
the mingw version of git refused because readlink(2) is not
supported. This seems to be sufficient to reproduce the issue.
I couldn't test the Cygwin version, though, because http://cygwin.com
doesn't respond at the moment.
But a working readlink(2) wouldn't help anyway, I guess. I imagine
that the reparse points used for deduplication point into a magic
block store which performs garbage collection of content that is no
longer referenced -- which probably means that a recreated "symlink"
may point to blocks that have been deleted in the meantime.
Perhaps you need a way to ask git to always follow symlinks instead
of trying to store their target specification.
René
[1] http://technet.microsoft.com/en-us/library/dd573308%28v=ws.10%29.aspx
[2] http://msdn.microsoft.com/en-us/library/windows/desktop/hh769303%28v=vs.85%29.aspx
next prev parent reply other threads:[~2013-03-19 21:08 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-03-18 21:20 FW: Windows. Git, and Dedupe Josh Rowe
2013-03-19 21:08 ` René Scharfe [this message]
2013-03-19 21:36 ` Josh Rowe
2013-03-20 19:54 ` René Scharfe
2013-03-20 20:43 ` Josh Rowe
2013-03-20 21:45 ` René Scharfe
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=5148D3BD.4040608@lsrfire.ath.cx \
--to=rene.scharfe@lsrfire.ath.cx \
--cc=Joshua.Rowe@microsoft.com \
--cc=git@vger.kernel.org \
--cc=msysgit@googlegroups.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.