All of lore.kernel.org
 help / color / mirror / Atom feed
From: Piotr Krukowiecki <piotr.krukowiecki@gmail.com>
To: Johannes Sixt <j.sixt@viscovery.net>
Cc: Junio C Hamano <gitster@pobox.com>,
	Git Mailing List <git@vger.kernel.org>
Subject: Re: cherry-pick applies some other changes than the specified one?
Date: Mon, 21 Mar 2011 19:12:38 +0100	[thread overview]
Message-ID: <4D879516.3060204@gmail.com> (raw)
In-Reply-To: <4D877FAD.9000807@viscovery.net>

W dniu 21.03.2011 17:41, Johannes Sixt pisze:
> Am 3/21/2011 17:09, schrieb Junio C Hamano:
>> Piotr Krukowiecki <piotr.krukowiecki@gmail.com> writes:
>>> But when I take a different approach, and in addition to this:
>>>
>>>> If I edit the file and remove the "<<<< HEAD" marked and code
>>>> between "===" and ">>>"  then
>>>
>>> I also manually add the "+line" which is the change done in the cherry-picked
>>> commit, git diff shows a lot of other changes in unrelated lines
>>> (which lie close
>>> but still were not modified by the patch, nor were shown previously by
>>> git diff).
>>>
>>> This is very weird.
>>
>> Sorry, I have no idea what you are talking about.

I hoped someone might have some clues :)

 
> Assuming you did not 'git add' the file yet, you are looking at the
> "condensed combined diff" after manually resolving the conflict by doing
> the "+line" manually that the cherry-pick should have brought in. Of
> course, a lot of context is visible here if both sides have diverged
> considerably in this area.
> 
> I.e. the diff will look something like
> 
>  +line from HEAD
>  +line from HEAD
> + line from cherry-picked
>  +line from HEAD
> ...
> 
> Notice the double columns before the content lines. This sort of diff
> extens above and below the conflicting section until there is a "gap" of 3
> lines that changed neither on the HEAD side nor on the cherry-picked side
> since the merge base.

Hm that might be possible! I'll check it tomorrow @work.

If that's the case here is what got me lost:

As I wrote earlier, after removing the "<<<< HEAD" and code between "===" 
and ">>>", the git-diff showed nothing. So the natural impression was
"my files does not have any changes in working tree".

But then when I have added one line and did the diff again, it suddenly
started showing some other changes, unrelated to the added line or to
the cherry-picked commit.
 
I might have misses the double columns in the diff output so I though
it's just normal diff.

Thanks to your and Junio explanation I now understand why it works like
that.

I think I even suspected this might have something to do with the merge
conflict and tried to make git-diff show me exact change between working
tree and index/HEAD (ignoring the merge), so I can verify the file indeed
only have the change I did, but I could not find such option.
Does it exists? 


-- 
Piotr Krukowiecki

  reply	other threads:[~2011-03-21 18:15 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-03-21  9:27 cherry-pick applies some other changes than the specified one? Piotr Krukowiecki
2011-03-21 16:09 ` Junio C Hamano
2011-03-21 16:41   ` Johannes Sixt
2011-03-21 18:12     ` Piotr Krukowiecki [this message]
2011-03-21 19:47       ` Junio C Hamano
2011-03-21 20:06         ` Piotr Krukowiecki
2011-03-21 19:58       ` Jonathan Nieder
2011-03-21 20:07         ` Piotr Krukowiecki
2011-03-21 20:21           ` Junio C Hamano
2011-03-21 20:54             ` Junio C Hamano
2011-03-22  5:27               ` Jonathan Nieder
2011-03-22  6:37                 ` Junio C Hamano
2011-03-22  8:04       ` Piotr Krukowiecki

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=4D879516.3060204@gmail.com \
    --to=piotr.krukowiecki@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=j.sixt@viscovery.net \
    /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.