1

与えられた

---a----b----c----d----e----f (default)
     |  |           |  
     ---g (1.0)     ----h---i---(2.0)

ブランチ(私の場合はリリース)という名前の特定のチェンジセットについて、このチェンジセットが(名前付きブランチのヘッドの親)の一部であることを知りたいです。

入力->出力

  • a->デフォルト、1.0、2.0
  • g->デフォルト、1.0、2.0
  • d->デフォルト、2.0
  • e->デフォルト
  • h-> 2.0

これを最も簡単な方法で行うにはどうすればよいですか(hg logの祖先があると思いますか?)?ブランチ名を入力として受け取るのではなく、すべての(開いている)名前付きブランチを動的に使用することをお勧めします。

4

2 に答える 2

1

私と同じ質問をしている他の人のために...

拡張機能にhttps://bitbucket.org/resi/hg-containsが含まれていることがわかりました。これはまさに私が望むことを行います。

hg headscontaining -b --revno [changesetId] --template {branches}
于 2013-01-21T16:14:12.667 に答える
0
[revsetalias]
bd($1) = descendants($1) - branch(default)

使用中で:hg bd(CSET-ID)

編集: 私の最初のバージョンは必要以上に優れていました (そして使用できませんでした) - ブランチのリストがすぐに返されましたが、これは最終的な Mercurial コマンドで revset としてほとんど使用されない可能性があります。

単一操作の結果は、テンプレート化されたログで使用するための revset です

hg log -r "bd(CSET)" --template "{branch}\n"

于 2013-01-21T14:46:00.160 に答える