想象一下,你有一个包MyPackage,它依赖于另一个名为Library. 在项目MyPackage中的类中具有扩展方法。LibraryClassLibrary
在某些时候Library被更改并被LibraryClass重命名NewLibraryClass或完全删除。您在项目中进行更改,例如将扩展方法移动到NewLibraryClass或以不同的方式解决它,这并不重要。
当有人已经安装了预Library更改版本MyPackage并对其进行更新时,就会出现问题。然后Library首先加载包,因为您的项目依赖于它。正在Library加载时LibraryClass被删除,因此MyPackage存在的扩展方法LibraryClass被删除。这标记MyPackage为脏,因此当它最终将更改加载到 时MyPackage,即使没有真正的冲突,也会要求用户解决合并。
如何解决?因为最终你的代码是好的,但是更新你的项目的用户将面临奇怪的合并问题。