From: Junio C Hamano <gitster@pobox.com>
To: Adam Dinwoodie <adam@dinwoodie.org>
Cc: Johannes Schindelin <johannes.schindelin@gmx.de>,
"brian m. carlson" <sandals@crustytoothpaste.net>,
Mark Levedahl <mlevedahl@gmail.com>,
git@vger.kernel.org, Eric Blake <eblake@redhat.com>,
"Shawn O . Pearce" <spearce@spearce.org>,
Ramsay Jones <ramsay@ramsay1.demon.co.uk>
Subject: Re: [PATCH] config.mak.uname: Cygwin: Use renames for creation
Date: Mon, 10 Aug 2015 12:08:29 -0700 [thread overview]
Message-ID: <xmqqwpx3t102.fsf@gitster.dls.corp.google.com> (raw)
In-Reply-To: <55C7883C.7040504@dinwoodie.org> (Adam Dinwoodie's message of "Sun, 09 Aug 2015 18:05:00 +0100")
Adam Dinwoodie <adam@dinwoodie.org> writes:
> If the desired goal is that Cygwin's link(2) acts like POSIX link(2)
> on network drives, I'm not convinced that's possible, at least not by
> emulating `core.createObject = rename` in the Cygwin library
> layer.
The way core.createObject=rename makes things work is by avoiding
link(2) in the first place and using rename(2) instead. You might
be able to emulate rename(2) of A to B by doing a link(2) of A to B
and then unlink(2) of A, but I do not think it is reasonable for the
system call emulation layer to detect a sequence of link followed by
unlink and use rename, i.e. emulationg the other way around.
So I suspect "fix in Cygwin" is a non-starter.
But in the end, I'd prefer the choice of the compiled-in default up
to the port maintainers. You earlier said:
This problem was reported on the Cygwin mailing list at
https://cygwin.com/ml/cygwin/2015-08/msg00102.html (amongst others) and
is being applied as a manual patch to the Cygwin builds until the patch
is taken here.
so my preference is to see Cygwin continue to do so for a couple
release cycles of ours to make sure all Cygwin end-users are happy
and consider the flip of the default a good change for them, and
then the official Cygwin packager of Git sends a patch our way.
https://cygwin.com/ml/cygwin/2015-08/msg00102.html seems to indicate
that somebody called Adam Dinwoodie is wearing Git maintainer hat,
so perhaps you may be that "official Cygwin packager of Git" ;-)
I agree with everything you said in that message to Peter---the
patch should be included when you hear reports of `git config
core.createObject rename` helping more people. After versions of
Cygwin Git package with such a change proves good, let's reduce the
workload of Cygwin Git maintainer by upstreaming that change to my
tree. But not before.
Thanks.
next prev parent reply other threads:[~2015-08-10 19:08 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-08-07 20:30 [PATCH] config.mak.uname: Cygwin: Use renames for creation Adam Dinwoodie
2015-08-08 20:47 ` Mark Levedahl
2015-08-08 21:06 ` brian m. carlson
2015-08-09 2:01 ` Adam Dinwoodie
2015-08-09 9:01 ` Johannes Schindelin
2015-08-09 17:05 ` Adam Dinwoodie
2015-08-10 19:08 ` Junio C Hamano [this message]
2015-08-11 10:05 ` Adam Dinwoodie
2015-08-18 15:44 ` Johannes Schindelin
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=xmqqwpx3t102.fsf@gitster.dls.corp.google.com \
--to=gitster@pobox.com \
--cc=adam@dinwoodie.org \
--cc=eblake@redhat.com \
--cc=git@vger.kernel.org \
--cc=johannes.schindelin@gmx.de \
--cc=mlevedahl@gmail.com \
--cc=ramsay@ramsay1.demon.co.uk \
--cc=sandals@crustytoothpaste.net \
--cc=spearce@spearce.org \
/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.