pnpm install/add/remove 卡住怎麼辦

--

在寫 code 的時候,尤其是需要裝新的 package 的時候,不知道為什麼會突然卡住

之前我碰過一次,意外亂弄解決了,但這次又發生一次,我大概整理出了為什麼。

後來才想到應該是 cache 的問題,所以我就去找了一下

結果...

首先先清除 cache ,但 pnpm 的方式跟 npm 、 yarn 不太一樣。

最容易搜尋到的指令是

pnpm store prune

但這個只是會去清除一些沒有對應到的 package。

而我們要做的是因為 package 的檔案裡面有衝突,所以才會卡住,而因為 pnpm 所有的 package 都是利用 reference 的方式,所以除非你刪除了 reference,不然用了上述指令就依然不會正常。

所以要做的就是要先找出 package 的所在位置,然後再手動刪除之。

pnpm store path

就會顯示路徑

/Users/[username]/Library/pnpm/store/v3

接著我們就是直接移除他們

rm -rf /Users/[username]/Library/pnpm/store/v3

這樣我們就清除了。

接著就可以刪除 node node_modules

rm -rf node_modules

然後重新安裝

pnpm install

我這邊會順便重新更新 pnpm-lock,也可以先試試不更新,如果還是行不通再來更新這部分,所以我會一起刪除 pnpm-lock.yaml

但裝到後面就會出現錯誤

這是因為我的專案有用到 husky,原因是因為我重新安裝了,所以就變成沒有權限。

這時候把權限還給它即可。

chmod +x /Users/[username]/[project_name]/node_modules/.bin/husky

這樣就可以成功跑起來了

--

--

Hugh's Programming life
Hugh's Programming life

Written by Hugh's Programming life

我是前端兼後端工程師,主要在前端開發,包括 React、Node.js 以及相關的框架和技術。之前曾擔任化工工程師的職位,然而對電腦科技一直抱有濃厚的熱情。後來,我參加了轉職課程並開設這個部落格紀錄我的學習過程。於2020年轉職成功後,我一直持續精進技能、擴展技術範疇跟各種對人生有正面意義的學習,以增加我的工作能力。

No responses yet