All of lore.kernel.org
 help / color / mirror / Atom feed
* bug: git fast-import should ignore configuration variable core.ignorecase (plain text format)
@ 2012-04-22 18:12 Philippe Martens
  0 siblings, 0 replies; only message in thread
From: Philippe Martens @ 2012-04-22 18:12 UTC (permalink / raw)
  To: git, msysgit

[-- Attachment #1: Type: text/plain, Size: 1269 bytes --]

Hello,

I’m not quite sure if this is to be considered a Windows specific bug. I’m
using Git-1.7.10-preview20120409 on Windows, but the problem exists in
previous versions.

When fast-exporting | fast-importing on Windows a repository with case only
renames, the resulting repository isn’t a copy of the initial repository.
This is because Windows repositories are created with core.ignorecase = true
by default.

The included script shows the problem: it creates a repository with
SomeFile.txt renamed to SOMEFILE.txt, then fast-export it and fast-import it
in two different repositories, with core.ignorecase=false and
core.ignorecase=true. The sha-1 of the second commit in the repository with
core.ignorecase=true is different from the initial repository because the
rename is ignored.
The situation is worse without rename detection on fast-export : the rename
becomes a delete.

I think the configuration variable core.ignorecase should be ignored by
fast-import, and case always taken into account in that case.

Kind regards,

Philippe Martens
Lead Architect

METRUM
Rue du Kiem, 163
L-8030 Strassen
Tél : +352 26 00 87 01
Fax : +352 26 00 87 02
GSM : +352 661 26 00 37
Email : philippe.martens@metrum.lu
Web : www.metrum.lu

[-- Attachment #2: test-fast-import.sh --]
[-- Type: application/octet-stream, Size: 612 bytes --]

git init export
cd export
git config core.ignorecase true
echo "With some content in it..." > SomeFile.txt
git add .
git commit -m "Add some file"
git mv -f SomeFile.txt SOMEFILE.txt
git commit -m "Rename it (case only)"
git fast-export --all -M -C > ../git.fast-export
git log --oneline

git init ../ignorecase.false
cd ../ignorecase.false
git config core.ignorecase false
git fast-import --quiet < ../git.fast-export
git log --oneline

git init ../ignorecase.true
cd ../ignorecase.true
git config core.ignorecase true
git fast-import --quiet < ../git.fast-export
git log --oneline
cd ..

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2012-04-22 18:12 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-04-22 18:12 bug: git fast-import should ignore configuration variable core.ignorecase (plain text format) Philippe Martens

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.