Hello, Here is the situation. Upstream realeses tarballs once in a while. I maintain local modifications. Every time upstream releases a tarball, I fast forward the 'upstream' branch, and merge into 'local' branch. My tree, currently, looks somewhat like this: o---o---o <--topic2 | | o---o---o <--topic1 | / o---o---C---A---o---o <--local / / / / / / o---o---o---B <--upstream Problem is, B should have been merged into 'local', at A, but I just realized it wasn't (probably due to my own stupidity). I need to correct A, i.e. merge with B, but keeping the branches already in flux, and propagating the changes due to the merge to them. In short, replace A with a properly merged A'. I tried branching from C and merging with B, then rebasing topic branches, but then I am not sure how to rebase 'local'to eliminate A. Thanks in advance for any help. -- Blu. - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html