61

使用 mercurial 克隆存储库时,您可以传递 -U/--noupdate 标志来创建没有工作副本的克隆。如果我在克隆时忘记传递此标志,我可以删除工作副本吗?如果是这样,怎么办?

这在概念上类似于这个 git question,但对于 mercurial。

4

2 回答 2

93

Mercurial wiki 上的文档对裸存储库进行了以下说明:

"虽然这是一个小问题,但 Mercurial 显然可以处理裸存储库;即没有工作副本的存储库。在 Git 中,您需要一个配置选项,而在 Hg 中,您只需要检查空修订,例如这个:

hg update null

null 修订类似于您刚刚完成时的空状态hg init。它是修订版 0 的父版本(以及所有非合并修订版的第二个父版本),通过更新回它,您将再次获得一个空的工作副本。

该链接可能看起来具有讽刺意味:

于 2010-11-11T20:21:43.790 回答
-23
rm -rf *

这将删除所有“可见”文件(在 *nix 下)。由于 Mercurial 存储库存储在“隐藏”文件.hg中,因此不会被触及。不幸的是,您自己的任何隐藏文件(例如.hgignore.

要恢复工作副本,我确信有一个hg update标志可以工作,但这也可以:

hg revert --all
于 2010-11-11T20:26:55.003 回答