svn switch
Mercurial ではどうすればよいですか?
つまり、作業ディレクトリを変更して、リポジトリ内の別のブランチに切り替えますか?
svn switch
Mercurial ではどうすればよいですか?
つまり、作業ディレクトリを変更して、リポジトリ内の別のブランチに切り替えますか?
hg update -r<REV>
updateコマンドは、指定されたリビジョンに切り替えます。
switch コマンドは、Subversion で 2 つのことを行います。
作業コピーを更新して、リポジトリ内の新しい URL をミラーリングします。この動作は ' ' に似ており
svn update
、作業コピーを同じリポジトリ内のブランチまたはタグに移動する方法です。構文の変更のみを反映するように、作業コピーの URL メタデータを書き換えます。これは、リポジトリのルート URL が変更された (スキームやホスト名の変更など) が、作業コピーが同じリポジトリ内の同じディレクトリを反映している場合に使用されます。
このコマンドは、たとえばSubversionからhg update foo
に切り替えると、前者に最もよく一致します。/trunk
/branches/foo
後者を行いたい場合は、単に編集します.hg/hgrc
。[paths]
次のようなセクションがあります。
[パス] デフォルト = 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 からプルして、そこに存在する可能性のある追加の変更を取得することができます。