git rebase --ontoが便利すぎる件
使用バージョン
% git --version git version 1.5.4.3
ヘルプから抜粋
% git rebase --help
のヘルプから抜粋すると、
Here is how you would transplant a topic branch based on one branch to another, to pretend that you forked the topic branch from the latter branch, using rebase --onto. First let's assume your topic is based on branch next. For example feature developed in topic depends on some functionality which is found in next. o---o---o---o---o master \ o---o---o---o---o next \ o---o---o topic We would want to make topic forked from branch master, for example because the functionality topic branch depend on got merged into more stable master branch, like this: o---o---o---o---o master | \ | o'--o'--o' topic \ o---o---o---o---o next We can get this using the following command: git-rebase --onto master next topic Another example of --onto option is to rebase part of a branch. If we have the following situation: H---I---J topicB / E---F---G topicA / A---B---C---D master then the command git-rebase --onto master topicA topicB would result in: H'--I'--J' topicB / | E---F---G topicA |/ A---B---C---D master This is useful when topicB does not depend on topicA.
こんなことが出来てしまう。便利杉。
ちなみにrebaesしたあとpushするときは一旦リモートのブランチを削除しないといけない点に注意。
リモートのブランチを消すには
git push remote :remote_branch
のようにする。