"J. Bruce Fields" <bfields@xxxxxxxxxxxx> writes: > In my defense, it is a little confusing: none of > the examples in the man page that use --onto actually need it, and the > "upstream" argument probably should be described as a commit or something > instead of a branch. > > (What is --onto actually useful for?) Think of it as a replacement of cherry-picking series of patches from remotely related branches. For example, I maintain two public branches "master" and "next", the former is supposed to be quite stable and the latter to contain sane proposed updates that need to be proven before graduating to "master". Sometimes I get patches that I have to apply on top of "next" because of textual dependency, but the changes are worthwhile to have it in "master" earlier than the changes the other series depends on. o---o---o---o---o master \ o---o---o---o---o next \ o---o---o good $ git checkout good $ git rebase --onto master next o---o---o---o---o master | \ | o---o---o good \ o---o---o---o---o next - : 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