Я пытался использовать git для возврата к предыдущему коммиту, но теперь некоторые node_modules не работают. Почему это?

#git #react-native #commit

#git #react-native #фиксация

Вопрос:

Это проект react native.

Я предполагаю, что я сделал что-то не так с git, потому что теперь я получаю ошибки о node_modules, которые работали с тех пор, как я начал работать над этим проектом.

Вот команды, которые я запустил:

   450* git checkout 'removed for security, but was the hash'
  451* git checkout master
  452* git stash
  453* git reset --hard 'removed for security, but was the hash'
  454* runios 8 (an alias we added ourselves, launches the app in the simulator)
  456* yarn
  457  yarn start
  

Комментарии:

1. что за код ошибки? Вы уже пытались удалить папку с модулями вашего узла?

Ответ №1:

Переустановите исходную фиксацию, используя файл package.json.

  1. git checkout коммит, который вы хотите попробовать
  2. удалите весь node_modules/ каталог
  3. yarn install ( npm install для поклонников npm) на основе файла package.json на тот момент

Когда я предоставляю кому-либо репозиторий узла, я всегда удаляю или исключаю node_modules/ , и получатель просто выполняет установку для своей ОС, версий и т.д. В противном случае мой код стал бы в 100 с лишним раз больше. Это обычная практика.

Что, возможно, произошло в вашем случае, так это то, что более старая версия имеет зависимости пакетов, отличные от установленных в настоящее время.

removing node_modules/ Выполнив установку повторно, вы можете устранить проблему.

Что касается Git, возможно, вам потребуется выполнить коммит catchup для разрешения. кстати, я храню node_modules в своем .gitignore файле, и это тоже обычная практика. Однако это означает, что при переключении коммитов вам может потребоваться пройти вышеуказанные процедуры, чтобы правильно настроить пакет версии node_module.

Ответ №2:

Похоже, это проблема с вашим локальным git… Но простое решение — выполнить установку yarn (в корне вашего проекта).

yarn install используется для установки всех зависимостей для проекта. Зависимости извлекаются из файла package.json вашего проекта и сохраняются в yarn.файл блокировки.

Сделайте это, и у вас снова будет ваша папка node_modules. В любом случае вы можете попробовать объединить последнюю версию вашего проекта, где папка не была удалена.

Но я рекомендую первый способ.