在终端上我输入
$ hg status
它显示了一个带有 M 和 ? 这表明它是修改文件和未知文件的列表,除了我没有对这些文件做任何事情。如果我尝试恢复
$ hg revert file/path/filename
它不做任何事情,这些文件不会被还原并且仍然列为已修改。至于带有 ? 的未知文件?在左边,我只是不知道如何处理这些文件。
顺便说一句,那些处于未知状态的文件?仍然是项目的一部分。有没有人遇到过这个问题?
你正确地理解了事情应该如何运作,所以任何错误都是微妙的。首先要检查:是否启用了(可怕的、可恨的、损坏的)inotify 扩展?您可以使用hg showconfig | grep extensions
. 一些流氓发行版默认启用了它,这是一个大问题。
如果不是这样,它的输出是hg diff
什么样的?怎么样hg summary
?当我们在它的时候,你在运行什么版本?
最后,您是否使用网络安装驱动器,尤其是 SMB/Windows?有时窗口会混淆文件的执行权限,这会导致hg status
将它们显示为已修改,而使用hg diff
.
hg status
带有 ? 的文件 是 Mercurial 没有跟踪并且没有被告知忽略的那些。至少文件带有?可以提示您需要将它们添加到存储库或忽略列表中。根据您的项目结构,hg status
报告中未跟踪的文件通常只是一个小麻烦。但是,请确保不将它们添加到 Mercurial 不会在以后造成问题。