0

我对Makefiles相当陌生。我不确定make clean. 以下哪项是正确的?

  • make clean应该删除从存储库中的其他文件构建的所有文件。例如:

    clean:
        @rm -rf dist
    
  • make clean应该删除从存储库中的其他文件构建的所有文件,或者由make setup. 例如:

    clean:
        @rm -rf dist
        @rm -rf node_modules # remove npm packages installed by `setup`
    

从另一个文件构建一个文件通常不需要 Internet 连接,但通常需要获取第三方依赖项。这表明make clean不应删除由make setup. 但是,如果一个人一直在修改第三方依赖项的来源,那么也许将这些更改吹走正是人们期望make clean做的事情。

换句话说,应该make clean“撤消” make,还是应该撤消make setup && make

4

1 回答 1

1

一般来说,这取决于你做什么make clean 。您引用的规则只是约定。

但是,调用的原因基本上是make clean

  • 完成所有操作后,尽可能多地释放磁盘空间。
  • 允许重新开始,以防万一出现问题(例如,时间戳)并且增量构建不再起作用。

关于第一种情况,根据“一切都完成”的语义,您的两种选择都是合理的。但是,我更愿意make uninstall重做(一切)安装。

于 2013-02-23T21:57:17.203 回答