Subject: Re: [PATCH 2/3] merge-recursive: Small code cleanup

From: Camille Moncelier <[email-masked]>
Date: Thu, 21 Oct 2010 21:43:15 +0200

On Thu, 9 Sep 2010 13:23:26 -0700
"Schalk, Ken" <[email-masked]> wrote:

> >Perhaps you could submit another patch changing your testcase back to
> >using a symlink to make sure someone like me doesn't break your
> >original testcase in the future?
> 
> Here's a patch relative to my last one.  Rather than restoring the
> previous test, I added it so that platforms with no symlink support
> can still test copy vs. rename and platforms with symlink support can
> also test rename vs. rename/symlink.
Hello, I think I have a test case that seems to be related to this
issue.

mkdir -p repo1
pushd repo1
git init .

mkdir dir1
echo file1 > dir1/file1
ln -s dir1 dir2
git add dir1 dir2
git commit -m "Initial status: dir2 -> dir1"

git checkout -b test1
git checkout -b test2

git co test1
git rm dir2
mkdir dir2
touch file2 > dir2/file1
git add dir2/file1
git commit -m "Removing link: dir1/ and dir2/"

message="New file in test1"
echo $message > new_file_test1
git add new_file_test1
git commit -m "$message"

git co test2
message="New file in test2"
echo $message > new_file_test2
git add new_file_test2
git commit -m "$message"

# Tries to get the last commit (which adds new_file_test1)
# into test2 fails.
git cherry-pick test1

# Would work with: git cherry-pick --strategy=resolve test1 
# (using 1.7.3.1)