On Tue, 19 May 2020 at 17:36, Jonathan Wakely <jwakely....@gmail.com> wrote: > > On Tue, 19 May 2020 at 17:19, Gerald Pfeifer <ger...@pfeifer.com> wrote: > > > > I hope the offer by some of you to support people like me who Git > > appears to hate with a fervor still stands? ;-) > > > > And I volunteer to enhance our documentation if it appears useful. > > > > > > Usecase: I've got a patch approved and pushed to HEAD, and approved > > for active release branches - 13a46321516e2efd3bbb1f1899c539c6724240a9 . > > > > Now I want to backport from HEAD to the GCC 10 tree, so checked out a > > copy, found git cherry-pick, and gave it a try: > > > > git cherry-pick 13a46321516e2efd3bbb1f1899c539c6724240a9 > > Auto-merging gcc/ChangeLog > > CONFLICT (content): Merge conflict in gcc/ChangeLog > > error: could not apply 13a46321516... i386: Define __ILP32__ and _ILP32 > > for all 32-bit targets > > hint: after resolving the conflicts, mark the corrected paths > > hint: with 'git add <paths>' or 'git rm <paths>' > > hint: and commit the result with 'git commit' > > > > What now? I can manually fix up gcc/ChangeLog, but `git diff` then > > shows a fairly big diff (essentially all changes since the one I am > > trying to cherry pick)? > > Then you fixed it up wrong, or didn't 'git add' after fixing it.
N.B. the git error above does tell you to do 'git add <paths>' on the files with conflicts, after resolving the conflicts (which is done the same way as for svn conflicts). When git gives you hints about what to do they're often right. > > 'git cherry-pick --abort' will bail out and undo the mess. > > > > > > > So ... is git cherry-pick even the right tool? > > Yes. > > > > > > And if so, how do I best go about conflicts happening as part of > > that, ChangeLog or otherwise? > > Follow the instructions at https://gcc.gnu.org/gitwrite.html#changelog