【问题标题】:haskell `stack` commands for uninstall/clean up?用于卸载/清理的 haskell `stack` 命令?
【发布时间】:2018-02-06 02:45:26
【问题描述】:
stack setup为项目下载安装GHC,
~/.stack/programs,
~/.stack/snapshots
以及我还不知道的其他地方)
stack build 下载依赖项并构建它们。
~/.stack/setup-exe-cache 和其他地方。
我想清理项目范围的 ghc 并从它们下载依赖项/构建输出,以及我磁盘上的所有其他项目相关内容。
除了手动删除它们之外没有其他方法吗?
【问题讨论】:
标签:
haskell
haskell-stack
【解决方案1】:
stack clean 命令清除.stack-work 中的本地缓存。
清理.stack缓存的功能尚未实现。请参阅此 GitHub 问题:
stack setup 为项目安装 GHC,但它全局存储 GHC(因此,如果该项目使用相同版本的 GHC,则无需为另一个项目再次安装 GHC)。
您只需执行rm -rf .stack-work 即可清理项目本地构建缓存(构建模块、项目的 github 依赖项等)。不过,rm -rf .stack-work 不适用于多包项目。只需执行stack clean --full 即可完全清除项目的本地缓存。
要清理全局缓存,您只需执行rm -rf ~/.stack。
因此,再次引用问题讨论的最新评论:
垃圾收集问题肯定需要以某种形式回答。如果可能的话,我想我可能会找到一个比新命令更可取的文档解决方案。如果手册中讨论了~/.stack 的目录结构并解释了哪些目录可以安全删除,那就太好了。