{"id":20507771,"url":"https://github.com/zty1205/node-package-manage","last_synced_at":"2025-07-06T10:03:34.236Z","repository":{"id":171642681,"uuid":"648209982","full_name":"zty1205/node-package-manage","owner":"zty1205","description":"npm, yarn, pnpm, 仅学习使用","archived":false,"fork":false,"pushed_at":"2023-06-01T13:28:04.000Z","size":15,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-05T22:03:53.017Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zty1205.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-06-01T12:57:51.000Z","updated_at":"2023-06-01T13:28:07.000Z","dependencies_parsed_at":null,"dependency_job_id":"20b78b26-fdc0-4b44-b2c3-3f4f7f860797","html_url":"https://github.com/zty1205/node-package-manage","commit_stats":null,"previous_names":["zty1205/node-package-manage"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/zty1205/node-package-manage","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zty1205%2Fnode-package-manage","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zty1205%2Fnode-package-manage/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zty1205%2Fnode-package-manage/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zty1205%2Fnode-package-manage/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zty1205","download_url":"https://codeload.github.com/zty1205/node-package-manage/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zty1205%2Fnode-package-manage/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263882261,"owners_count":23524459,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-15T20:15:28.409Z","updated_at":"2025-07-06T10:03:34.230Z","avatar_url":"https://github.com/zty1205.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# node-package-manage\nnpm, yarn, pnpm, 仅学习使用\n\n# 如何使用\n\n## 使用前须知\n\n- 必须安装nvm\n- node版本  \u003e= 18.16.0\n\n\n### 注意\n\n- 下载中fsevents可能会因node版本问题而出错，但不是关键，可忽略\n- 如果遇到下载依赖慢，或失败可以尝试从失败的地方重新开始运行 （常见于npm, pnpm低版本包管理器， 如果使用多线程应该可以解决）\n- 分析命令只分析下载依赖后的文件夹结构，如果要分析依赖可直接分析lock文件\n\n## 命令解释\n\n\n- gen: 清除包管理器缓存并执行脚本\n- gen:file: 执行脚本但只生成文件，不执行安装依赖\n- gen:npm: 执行脚本但只会处理npm相关\n- gen:yarn: 执行脚本但只会处理yarn相关\n- gen:pnpm: 执行脚本但只会处理pnpm相关\n- dev: 同gen:file命令\n- build: 同gen命令\n- pre: 预先使用nvm下载所需要的node版本\n- analyze: 分析生成的项目的依赖结构到对应的文件夹下\n- all: 先build在analyze\n\n\n###  某个包的某几个版本生成 \n\n```sh\nnpm run gen pnpm@1 npm@2\n```\n\n\n\n\n## 原理\n\nnode \u003e= 18.16.0 的版本提供了 corepack 特性 可以用于切换包管理器，所以需要使用时，node版本需要满足要求。\n\n但在包管理器低版本时，会存在不兼容的情况，这个时候就不能使用该特性，所以必须切换node版本和包管理器版本。同时下载会有点慢 因为需要安装相应版本的管理器（低版本的pnpm）\n\n### 耗时\n\n- 由于无法真正模拟以前的环境，所以暂无法统计install的耗时。\n\n- node7.0.0下的pnpm和npm会下载很慢，运行时建议单独\n\n\n\n## 使用依赖\n\n生成的项目内使用的依赖，下图为嵌套化展示\n\n```sh\nnode_modules\n├── jquery@3.7.0 # 普通包\n└── rollup@0.20.0\n    └── source-map-support@0.3.3\n        └── source-map@0.1.32\n└── babel@4.0.1\n    └── source-map@0.1.43\n    └── source-map-support@0.2.9\n        └── source-map@0.1.32\n```\n\n\n\n## 只做记录\n\n- node v0.10.0 (npm v1.2.14)\n- node v0.11.1 (npm v1.2.18)\n- node v4.0.0 (npm 2.14.2)\n- node v7.0.0 (npm 3.0.18)\n- node v7.7.0 (npm v4.1.2)\n- node v8.0.0 (npm v5.0.0)\n- node v10.0.0 (npm 5.6.0)\n- node v11.0.0 (npm v6.4.1)\n- node v18.16.0 (npm 9.5.1)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzty1205%2Fnode-package-manage","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzty1205%2Fnode-package-manage","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzty1205%2Fnode-package-manage/lists"}