Сохраняются ли изменения, внесенные исправлением аудита npm, после отправки кода в git repo?

Я недавно обнаружил npm audit и выполнил команду, чтобы найти уязвимости в проекте, над которым я работаю. Наткнулся на кучу их (более 100).

npm предполагает, что работает npm audit fix исправит все уязвимости, кроме тех, которые имеют критические изменения. Я не сталкивался с такой уязвимостью в своем коде, и теперь он показывает 0 уязвимостей.

Мой вопрос заключается в том, что когда я отправляю код на github, эти уязвимости будут уже исправлены для того, кто клонирует / разветвляет это репо?

Для контекста, node_modules игнорируются в моем .gitignore файл (что означает, что они не помещаются в github вместе с кодом). поскольку node_modules где применяются эти "исправления уязвимостей", они сохраняются для всех, кто затем разветвляет / клонирует это репо?

Если так, то как? Это как-то связано с package-lock.json?

Если нет, есть ли способ сделать эти изменения постоянными?

1 ответ

Да, это связано с package-lock.json Подробнее о блокировках пакетов читайте здесь. В соответствии с сайтом, блокировка пакетов представляет собой воспроизводимое дерево вашей папки node_modules.

Да, изменения внесены npm audit fix настойчивы, но только если вы совершите package-lock.json в репозиторий git.

Согласно NPM, "этот файл предназначен для сохранения в исходных репозиториях".

Если вы передадите существующий package-lock.json файл в ваш репозиторий, а затем запустите npm audit fix, вы увидите изменения в вашем локальном package-lock.json файл (при условии npm auditсмог исправить любые уязвимые пакеты). Вы можете просмотреть эти изменения, а затем зафиксироватьpackage-lock.json файл во второй раз, чтобы сохранить изменения.

Другие вопросы по тегам