Во-первых, установщик Microsoft Windows имеет возможность напрямую исправлять двоичные файлы. Учитывая известные ранее состояния файла, он может привести их к известному текущему состоянию. Раньше мы делали это для нашего крупного коммерческого продукта, но после нескольких выпусков нашим четырехпроцессорным системам потребовалось более 24 часов для создания патча - что не очень хорошо, когда у вас есть (или вы хотите иметь) ночные сборки.
Через некоторое время мы выбрали кумулятивные исправления, в которых мы просто разрешили обновления. Мы проверяем, что вы на более низком уровне, а затем в основном заменяем весь продукт. (У нас также был случай, когда вторая или третья «дельта» была в основном всем чем угодно.)
В Unix / Linux мы не можем использовать MSWI, очевидно, поэтому мы предоставляем другой установщик, который в основном делает то же самое: убирает все файлы с пути, устанавливает, как будто новый, а затем удаляет резервную копию. Реальность такова, что для нас в нашем бизнесе этого достаточно. Мы не получили ни одной жалобы, о которой я знаю (и эти жалобы довольно быстро меня поразят, исходя из моей текущей работы), когда люди были достаточно недовольны, чтобы действительно звонить и жаловаться. В основном, они хотят получить более новый уровень с патчами, чтобы они могли продолжать свой реальный бизнес. Как ни странно, их бизнес не устанавливает патчи.