On 6/23/07, Steffen Prohaska [off-list ref] wrote:
git-transplant.sh <onto> <from> <to>
transplant starts with the contents of <onto> and puts on top of
it the contents of files if they are touched by the series of
commits <from>..<to>. If a commit touches a file the content of
this file is taken as it is in the commit. No merging is
performed. Original authors, commiters, and commit messages are
preserved.
Warning: this is just a quick hack to solve _my_ problem.
- No error checking is performed.
- Removal of files is not handled.
- Whitespace in filename is not handled.
- The index is left in dirty state.
- No branch is created for the result.
- The script is not integrated with git's shell utilities.
# detached head
git checkout $(git rev-parse onto) && git format-patch --stdout
--full-index from..to|git am -3