バックグラウンド
Mercurial には現在、改ざんされるべきではない歴史を人々が改ざんするのを防ぐ優れたメカニズムであるフェーズがあります。変更セットがリモート リポジトリにプッシュされると、変更セットが作成され、それ以上作成public
できなくなりますrebased
。これは通常、リポジトリが公開されていて、変更セットを他の人に変更されたくない場合に適しています。
draft
ただし、変更セットを自分だけと共有するための独自の一時リポジトリがある場合は、非常に面倒になる可能性があります。Mercurial には、これをオフにするオプションがあります。これをリモートリポジトリ.hg/hgrc
のファイルに追加します。
[phases]
publish = False
draft
これにより、リモート リポジトリにプッシュされたチェンジセットがフェーズからフェーズへ移動するのを防ぎますpublic
(ローカルのチェンジセットとリモート リポジトリにプッシュされたばかりのチェンジセットの両方)。ただし、このチェンジセットをプルすると、public
フェーズ内で常にプルダウンされます。
質問
draft
フェーズで変更セットをプルダウンしたいと考えています。個人用サーバーに変更セットをプッシュしてから、自宅でプルダウンしたいだけです。プルした後rebase
、真のパブリッシング サーバーからプルしたコミットの上に一時的なコミットを行います。
プルされた変更セットの自動移動を回避する方法はpublic
素晴らしいでしょう。このリモート リポジトリは、私にとって完全かつ完全なドラフト サーバーです。draft
試みが失敗した後に変更セットを手動で元に戻すことを余儀なくされることは、rebase
本当に神経質になり始めています。