次のパターンが不可能な理由を知りたいです。
ローカル機能ブランチ (minor_feature - 世界と共有することを意図していない) を作成したので、その作業をよく知られているブランチ (安定版) の先端にリベースしたいと思います。ただし、安定版から分岐してから安定版が進行していない場合、rebase は再構築するものを何も見つけられないことを発見しました。
これは、リベースの宛先がソースの祖先であってはならないという規則に違反していることを理解していますが、示されている単純なケースでこれが禁止されるべき理由がわかりません。また、ブランチはさておき、リベース中にトポロジが実際に変更されないことも理解しています。しかし、ブランチ名がトポロジにとって実際に重要であることを考えると、安定版にそれ以上のリビジョンがコミットされていないという特別なケースにすぎないようです。安定版の先端に追加のリビジョンを 1 つ追加するだけで (たとえば、他の場所から取り込まれたとします)、もちろんリベースを実行できます。
o branch:minor_feature
| rev:4
| changeset:746d8191aa5d
|
o branch:minor_feature
| rev:3
| changeset:520f565ba7f2
|
@ branch:stable
| rev:2
| changeset:64e7c753c090
|
o branch:stable
| rev:1
| changeset:3dc55a5c9971
|
o branch:stable
rev:0
changeset:fbf1f426945c
$hg rebase -b minor_feature
nothing to rebase
-- ありがとうクリス・ゴーマン