2

我只是在学习蒙蒂塞洛并且有一些挣扎。我一直在阅读《深入法罗》和《莫尼塞洛的死简单介绍》。我还观看了有关该主题的 Pharocast,它通过得非常快,并且使用的代码版本似乎较旧,因此与我所拥有的 UI(Pharo 5.0)不太匹配。我明白文档告诉我的内容,但他们几乎都保持直截了当。

我一直在做一个项目,当我去蒙蒂塞洛查看包列表时,其中有几个不属于我的包被标记为“脏”。

在此处输入图像描述

我创建的第一个包应该是脏的。但其他列出的要么是我的 Pharo 5.0 安装附带的,要么是我安装的 Gofer(车库包)。

为什么这些其他包裹被标记为脏?我检查了其中的几个“更改”,其中一些显示了很多更改。我没有改变任何一个。我可以忽略这些指标吗?

4

1 回答 1

3

这有几个稍微不同的技术原因,这些都归结为一件事:蒙蒂塞洛做出了错误的猜测。我并不是说蒙蒂塞洛在这方面“不好”,但近年来加载变得更加复杂,蒙蒂塞洛无法应对脏痕方面的所有不同问题。

举个例子,看看“UnifiedFFI”和“UnifiedFFI-Legacy”。它们都具有相同前缀的事实很好地表明蒙蒂塞洛认为,在加载“UnifiedFFI-Legacy”时,它正在修改“UnifiedFFI”。“UnifiedFFI”因此变得“脏”。

免责声明:这个例子可能并不完全正确,因为这都是我的想法。

显然,脏包也可能只是脏包,因为两个包具有横切代码,这很糟糕,但会发生。

回答您的问题:是的,您可以简单地忽略脏包。(我们正在努力改善这种情况。)

于 2016-06-08T05:23:34.850 回答