更新 yarn .lock 并推送到远程以影响 docker 个实例

update yarn .lock and push to remote to affect docker instance

在项目中,我从我的组织的 GitLab 中克隆,package.json 中有一个模块为:

"react-native-device-info": "https://github.com/KarlosQ/react-native-device-info#master",

并且分别在 yarn.lock 中我们有

"react-native-device-info@https://github.com/KarlosQ/react-native-device-info#master":
  version "0.21.5"
  resolved "https://github.com/KarlosQ/react-native-device-info#beebff8dc284decfba917f2c6d30d0e535cc4002"

出于任何原因提交 beebff8dc... 在模块的主分支中不存在。

因此,GitLab 管道中的所有构建都失败了。

error Couldn't find match for "beebff8dc..." in ....

如何在本地更改它并推送到影响管道和构建通道的远程分支?

在本地清除 Yarn 缓存没有帮助。从 yarn.lock 中删除该模块会导致其他问题,即我的组织帐户不再被识别并且 yarn install 失败!

运行:

yarn uninstall react-native-device-info && yarn add react-native-device-info@0.21.5

第一个将从您的 node_modules、package.json 和 yarn.lock 中删除依赖项。

第二个将恢复您所依赖的版本,即旧 yarn.lock 中所述的 0.21.5。

你不应该关心任何特定的提交,但应该 yarn 处理内部。

丢失的提交很可能是从外部存储库的 master 分支中删除的,因此永远不会被正确解析。