Forward-port a patch using git
Hi all
I have patches (xyz.patch files) which apply cleanly to kernel 2.6.36 and 2.6.36.1 and do not apply cleanly on 2.6.37-rc4 (I mean they do apply but with massive offsets...) I would like to forward-port them to 2.6.37-rc4, i.e. create equivalent patch files that would apply cleanly on 2.6.37-rc4 with zero offsets.
I have thought that there should be some git mechanism to confirm that such massive offsets which "patch" sees are actually correct and not false-positives, and are caused by the commits from 2.6.36 to 2.6.37-rc4. There should be some mechanism in git to track line shifts in source files caused by commits... After confirming this, Git should create for me equivalent patch files that apply cleanly to 2.6.37-rc4 that I can give to other people.
Is it possible? I am unfortunately a newbie with git. Can you help me?
Thank you
PS: I have downloaded the linux-2.6-stable git repository containing all needed revisions: v2.6.36, v2.6.36.1 and v2.6.37 .
Quoted 4 lines · Spelic
Hi all
I have patches (xyz.patch files) which apply cleanly to kernel 2.6.36 and 2.6.36.1 and do not apply cleanly on 2.6.37-rc4 (I mean they do apply but with massive offsets...) I would like to forward-port them to 2.6.37-rc4, i.e. create equivalent patch files that would apply cleanly on 2.6.37-rc4 with zero offsets.
I found it myself, sorry for having asked.
It was:
checkout v2.6.36
apply 1 patch
commit
apply 1 patch
commit
...
rebase v2.6.37-rc4
git format-patch -o <destdir> -numpatches
Quoted 5 lines · Spelic
I found it myself, sorry for having asked.
It was:
checkout v2.6.36
Be aware that checking out the v2.6.36 tag will mean you are not on any branch. So this will work fine:
Quoted 7 lines
apply 1 patch
commit
apply 1 patch
commit
...
rebase v2.6.37-rc4
git format-patch -o <destdir> -numpatches
But at the end, you will not have any branch tip pointing to your rebased work. If all you want are the patches as output, then that's fine. But you may want to do:
git checkout -b some-useful-name v2.6.36
as the first step instead, which means you can come back to your rebased work later as "some-useful-name".
-Peff