страница GreaseSpot на блоках метаданных говорит, что эти два очень похожи, но @match "устанавливает более строгие правила того, что * символ означает". Затем GreaseSpot переходит к преподавать с помощью @include, но примеры Chrome, такие как это, как правило, используют @match и указывают, что @include поддерживается только для целей совместимости; @match является предпочтительным.
Видно, @include google.* может работать на google.evil.com, а @match google.* не может.
Этот один пример недостаточен, чтобы действительно увидеть, как подстановочные знаки ведут себя по-разному между этими двумя, и более подробные объяснения запрашиваются здесь.
Новые сценарии GreaseMonkey (Firefox) используют @include по умолчанию, а новые скрипты TamperMonkey (например, Chrome) по умолчанию используют @match.
В чем именно отличия между этими двумя?
Например, как каждый обрабатывает подстановочные знаки?
Существуют ли различия в совместимости между браузерами?
Какие причины у кого-то есть для выбора одного из них?