* Cherry pick a commit but with files in another location
@ 2020-04-11 11:21 Ani Sinha
2020-04-11 12:21 ` Martin Ågren
0 siblings, 1 reply; 5+ messages in thread
From: Ani Sinha @ 2020-04-11 11:21 UTC (permalink / raw)
To: git
Hi,
I have an use case where I need to cherry pick a change from one branch to another. The change will apply cleanly but the files in the branch where I want to cherry pick the co mit to have been moved under a different directory. So simple cherry pick will result in conflicts. Is there a clean way to cherry pick in this case? Is there an option to provide -p0, -p1 etc to the patch?
Thanks
Ani
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Cherry pick a commit but with files in another location
2020-04-11 11:21 Cherry pick a commit but with files in another location Ani Sinha
@ 2020-04-11 12:21 ` Martin Ågren
[not found] ` <b26f041f-82d5-450f-998d-5a5c557a7994@Spark>
0 siblings, 1 reply; 5+ messages in thread
From: Martin Ågren @ 2020-04-11 12:21 UTC (permalink / raw)
To: Ani Sinha; +Cc: Git Mailing List
Hi Ani,
On Sat, 11 Apr 2020 at 13:33, Ani Sinha <ani@anirban.org> wrote:
>
> I have an use case where I need to cherry pick a change from one branch
> to another. The change will apply cleanly but the files in the branch
> where I want to cherry pick the co mit to have been moved under a
> different directory. So simple cherry pick will result in conflicts. Is
> there a clean way to cherry pick in this case? Is there an option to
> provide -p0, -p1 etc to the patch?
I just tried the following commands. Admittedly, this example is a bit
silly, but at least for me, Git does handle the move just fine. Does
this work for you?
mkdir test
cd test
git init
mkdir olddir
echo old >olddir/file
git add olddir/
git commit -m Initial
git mv olddir newdir
git commit -m Move
echo new >newdir/file
git commit newdir/file -m Change
git checkout -b my-branch HEAD~2 # pre-move
git cherry-pick master
cat olddir/file
What kind of conflicts do you get in your real-world use case?
Martin
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Cherry pick a commit but with files in another location
[not found] ` <b26f041f-82d5-450f-998d-5a5c557a7994@Spark>
@ 2020-04-11 12:42 ` Martin Ågren
2020-04-11 13:25 ` Ani Sinha
0 siblings, 1 reply; 5+ messages in thread
From: Martin Ågren @ 2020-04-11 12:42 UTC (permalink / raw)
To: Ani Sinha; +Cc: Git Mailing List
Hi,
On Sat, 11 Apr 2020 at 14:24, Ani Sinha <ani@anirban.org> wrote:
> On Apr 11, 2020, 17:51 +0530, Martin Ågren <martin.agren@gmail.com>, wrote:
>
> > On Sat, 11 Apr 2020 at 13:33, Ani Sinha <ani@anirban.org> wrote:
>
> > > I have an use case where I need to cherry pick a change from one branch
> > > to another. The change will apply cleanly but the files in the branch
> > > where I want to cherry pick the co mit to have been moved under a
> > > different directory. So simple cherry pick will result in conflicts. Is
> > > there a clean way to cherry pick in this case? Is there an option to
> > > provide -p0, -p1 etc to the patch?
>
>
> > I just tried the following commands. Admittedly, this example is a bit
> > silly, but at least for me, Git does handle the move just fine. Does
> > this work for you?
> >
> > mkdir test
> > cd test
> > git init
> > mkdir olddir
...
> > git mv olddir newdir
...
> > What kind of conflicts do you get in your real-world use case?
> My usecase is slightly different. The files I want to patch has been
> moved under a new subdirectory which is under the original root
> directory. So in order to patch, I need to add a new prefix to the patch
> manually.
I'm not able to fully guess your situation from this, but I wonder about
one thing: Do you use "git cherry-pick", "git am" or "git apply"? (Or
something else entirely?) Are you aware of "-p<n>" for "git apply"
(and "--directory=<root>"?) and are wondering what similar options are
available with "git cherry-pick"?
I still don't fully understand what you're doing and what you're seeing,
so it's hard to get a good picture of the problem.
I'm about to leave, so if I stay silent for several hours, that's why. :)
Martin
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Cherry pick a commit but with files in another location
2020-04-11 12:42 ` Martin Ågren
@ 2020-04-11 13:25 ` Ani Sinha
2020-04-13 5:43 ` Martin Ågren
0 siblings, 1 reply; 5+ messages in thread
From: Ani Sinha @ 2020-04-11 13:25 UTC (permalink / raw)
To: Martin Ågren; +Cc: Git Mailing List
> On Apr 11, 2020, at 6:13 PM, Martin Ågren <martin.agren@gmail.com> wrote:
>
> Do you use "git cherry-pick", "git am" or "git apply"?
Yes
> (Or
> something else entirely?) Are you aware of "-p<n>" for "git apply"
> (and "--directory=<root>"?) and are wondering what similar options are
> available with "git cherry-pick"?
Yes was wondering if similar options exist for cherry pick. I wanted to use cherry-pick so that cherry picks can be tracked by git.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Cherry pick a commit but with files in another location
2020-04-11 13:25 ` Ani Sinha
@ 2020-04-13 5:43 ` Martin Ågren
0 siblings, 0 replies; 5+ messages in thread
From: Martin Ågren @ 2020-04-13 5:43 UTC (permalink / raw)
To: Ani Sinha; +Cc: Git Mailing List
On Sat, 11 Apr 2020 at 15:25, Ani Sinha <ani@anirban.org> wrote:
>
> > On Apr 11, 2020, at 6:13 PM, Martin Ågren <martin.agren@gmail.com> wrote:
> >
> > Do you use "git cherry-pick", "git am" or "git apply"?
>
> Yes
I still don't understand exactly what it is you're doing.
> > (Or
> > something else entirely?) Are you aware of "-p<n>" for "git apply"
> > (and "--directory=<root>"?) and are wondering what similar options are
> > available with "git cherry-pick"?
>
> Yes was wondering if similar options exist for cherry pick. I wanted
> to use cherry-pick so that cherry picks can be tracked by git.
Are you working on some repo that is publicly available, e.g., on
github/gitlab? If so, you could post a link.
What is it that you try doing? You could post the commands you execute.
What happens? You could post error messages.
What do you expect *should* happen? You could try to describe your
expectations.
Without that kind of information, it is unfortunately hard to help you.
One final thought: Have you actually tried cherry-picking the way you
want to, and have you actually encountered a problem? Or are you looking
for solutions to a problem that you're not sure you're having?
Martin
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2020-04-13 5:44 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-04-11 11:21 Cherry pick a commit but with files in another location Ani Sinha
2020-04-11 12:21 ` Martin Ågren
[not found] ` <b26f041f-82d5-450f-998d-5a5c557a7994@Spark>
2020-04-11 12:42 ` Martin Ågren
2020-04-11 13:25 ` Ani Sinha
2020-04-13 5:43 ` Martin Ågren
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).