git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Junio C Hamano <gitster@pobox.com>
To: "Torsten Bögershausen" <tboegi@web.de>
Cc: Dan Moseley <Dan.Moseley@microsoft.com>,
	"git@vger.kernel.org" <git@vger.kernel.org>
Subject: Re: [PATCH] git-mv: fix git mv bug with case insensitive fs
Date: Tue, 05 Jan 2021 20:05:22 -0800	[thread overview]
Message-ID: <xmqq7doqwvzx.fsf@gitster.c.googlers.com> (raw)
In-Reply-To: 20201231071357.mtcxmoxbg6jrq3gn@tb-raspi4

Torsten Bögershausen <tboegi@web.de> writes:

> On Tue, Dec 29, 2020 at 02:06:37AM +0000, Dan Moseley wrote:
>
> First of all, thanks for submitting this to git.git.
> I take the freedom to add some comments here.
>
>> Fix git mv to not assert when src is already in the index under a
>> different casing, core.caseInsensitive=true, and the file system
>> is case insensitive.
> The config variable is named core.ignorecase
>
> Does it make sense to illustrate the use case here, like this:
>
>  git init
>  echo foo >foo
>  git add foo
>  git mv foo FOO
>  git mv foo bar
>
>>
>> Since 9b906af657 the check that git mv does to ensure the src is in the
>> cache respects caseInsensitive. As a result git mv allows a move from a
>> file that has a different case in the index than it does on disk.
>> After the rename on disk, git mv fails to find the file in the cache
>> in order to rename it in the index, and asserts.
>> Assertion failed: pos >= 0, file builtin/mv.c, line 295
>>
>> This is the simplest possible fix, suggested by @tboegi. It does leave
>> the file renamed on disk, but that is easy to reverse after the error.
>
> We can expand the short-ish "@tboegi" into a "Helped-by" line, please see below.
> And refrase the paragraf like this:
>
> This is the simplest possible fix, it avoids to leaving a .git/index.lock
> behind.  It does leave the file renamed on disk,
> but that is easy to reverse after the error.

Sorry but I feel lost here.  So this is not a fix with which the end
user does not have to do anything after kicking in?  The only thing
it "fixes" is to avoid hitting a BUG() or something that can leave
the .lock file behind (so that the user does not have to run "rm
.git/index.lock" after the operation)?


  reply	other threads:[~2021-01-06  4:08 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <BYAPR21MB1158F64E1141453F7D00B46CE0D89@BYAPR21MB1158.namprd21.prod.outlook.com>
     [not found] ` <BYAPR21MB11585FFD46DEE7AD4EEEFEABE0D89@BYAPR21MB1158.namprd21.prod.outlook.com>
2020-12-29  2:06   ` [PATCH] git-mv: fix git mv bug with case insensitive fs Dan Moseley
2020-12-31  7:13     ` Torsten Bögershausen
2021-01-06  4:05       ` Junio C Hamano [this message]
2021-01-06 10:53         ` [PATCH/RFC v1 1/1] git mv foo FOO ; git mv foo bar gave an assert tboegi
2021-01-06 23:51           ` Junio C Hamano
2021-03-01 17:05         ` [PATCH v2 " tboegi
2021-03-01 19:21           ` Junio C Hamano
2021-03-01 19:36             ` Chris Torek
2021-03-01 21:53               ` Junio C Hamano
     [not found]         ` <20210301170425.12154-1-tboegi@web.de>
2021-03-01 20:23           ` [EXTERNAL] " Dan Moseley
2021-03-01 21:47             ` Junio C Hamano
2021-03-01 21:41         ` [PATCH v3 " tboegi
2021-03-01 23:59           ` 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

  List information: http://vger.kernel.org/majordomo-info.html

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

  git send-email \
    --in-reply-to=xmqq7doqwvzx.fsf@gitster.c.googlers.com \
    --to=gitster@pobox.com \
    --cc=Dan.Moseley@microsoft.com \
    --cc=git@vger.kernel.org \
    --cc=tboegi@web.de \
    /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.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).