web-dev-qa-db-ja.com

Mercurialクローンから作業コピーを削除するにはどうすればよいですか?

Mercurialを使用してリポジトリのクローンを作成する場合は、-U/-noupdateフラグを渡して、作業コピーのないクローンを作成できます。クローン時にこのフラグを渡すのを忘れた場合、作業コピーを削除できますか?もしそうなら、どのように?

これは概念的には このgitの質問 に似ていますが、Mercurialの場合です。

60
richq

ここでニュアンスが欠けているかもしれません。誰かが私を訂正することができます。

Mercurial wikiのドキュメントには、裸のリポジトリについて次のように書かれています。

"これは小さな問題ですが、Mercurialは明らかにベアリポジトリ、つまり作業コピーのないリポジトリを処理できます。Gitではそのための構成オプションが必要ですが、Hgでは次のように、nullリビジョンをチェックアウトする必要があります: "

hg update null

Nullリビジョンは、hg initを実行したときの空の状態です。これはリビジョン0の親(およびすべての非マージリビジョンの2番目の親)であり、それに更新して戻すと、空の作業コピーが再び取得されます。

リンクは皮肉に見えるかもしれません:

82
pyfunc