どうすればよいですかsvn switch
は、Mercurialでは?
それは作業ディレクトリを変更してリポジトリ内の別のブランチに切り替えることですか?
hg update -r<REV>
pdate コマンドは、指定されたリビジョンに切り替えます。
Switchコマンドは、Subversionで2つのことを行います。
作業コピーを更新して、リポジトリ内の新しいURLをミラーリングします。この動作は「
svn update
」に似ており、作業コピーを同じリポジトリ内のブランチまたはタグに移動する方法です。構文の変更のみを反映するように、作業コピーのURLメタデータを書き換えます。これは、リポジトリのルートURL(スキームやホスト名の変更など)が変更されたが、作業コピーが同じリポジトリ内の同じディレクトリをまだ反映している場合に使用されます。
hg update foo
コマンドは、たとえばSubversionで/trunk
から/branches/foo
に切り替えると、前者と最も厳密に一致します。
後者を実行する場合は、.hg/hgrc
を編集するだけです。次のような[paths]
セクションがあります。
[パス] default = http://example.net/something
そして、このデフォルトのプッシュ/プルURLを、必要に応じて別のURLに変更できます。他の場所から頻繁にプッシュ/プルする必要がある場合は、このセクションに他のエントリを追加することもできます。ある場所からプルし、別の場所にプッシュする場合は、default-Push
エントリを追加します。
ブランチを切り替えたい場合は、次を実行します。
まず、利用可能なブランチを確認し、hg branches
と入力します。これにより、使用可能なすべてのブランチがリストされます。
次に、現在作業しているブランチを特定し、hg branch
と入力します。これにより、現在のブランチがわかります。
最後にブランチを切り替えるには(およびすべてのローカル変更を消去)、hg update -C name-of-branch
と入力します。これにより、指定したブランチ名に切り替わります。
hg branch
をもう一度入力して確認します。
リモートブランチの「tip」に切り替えるには:
hg pull -u <remote_branch>
ローカルブランチ(既に最新)の場合:
hg update -r <local_branch>
別の答えは、「支店」の場合、「ネット上の任意の場所にあるレポの別のクローン」を意味します。できません。
言い換えると、hg.a.comのレポと、そのレポhg.b.comのクローンを指定すると、次のようなコマンドはありません。
hg switch hg.b.com .
(現在のディレクトリがhg.a.comのクローンのルートであると仮定して、そこにsvn用語を使用します)。
ただし、hg.a.comのクローンを作成し、そのクローン(比較的安価なはずです)をローカルにクローンしてから、hg.b.comからプルして、そこに存在する可能性のある追加の変更を取得できます。