使用mercurial克隆存储库时,可以传递-U / - noupdate标志以创建没有工作副本的克隆。如果忘记在克隆时传递此标志,是否可以删除工作副本?如果是这样,怎么样?
这在概念上类似于this git question,但对于mercurial。
答案 0 :(得分:81)
我可能会错过这里的细微差别。有人可以纠正我。
Mercurial wiki的文档说明了关于裸存储库的信息:
“虽然这是一个小问题,但Mercurial显然可以处理一个裸存储库;也就是说,没有工作副本的存储库。在Git中你需要一个配置选项,而在Hg中你只需要检查out null null修订版,如下所示:“
hg update null
空修订版是您刚刚完成hg init
时的空状态。它是修订版0的父级(以及所有非合并修订版的第二个父级),并通过更新回来再次获得一个空的工作副本。
链接可能看起来很讽刺:
答案 1 :(得分:-20)
rm -rf *
这将删除所有“可见”文件(在* nix下)。由于Mercurial存储库存储在“隐藏”文件.hg
中,因此不会触及它。不幸的是,您自己的隐藏文件也不会,例如.hgignore
。
要恢复工作副本,我确信有一个hg update
标志可以正常工作,但这也是:
hg revert --all