假设我只想在某些文件更改后才重新编译它们,那么使用文件修改时间是一个可靠的来源吗?我知道很多人都用哈希,但这真的有必要吗?
这取决于操作系统还是文件系统?
如果一个文件被“触摸”但没有被修改,那就没什么大不了的了,只要修改后的mod时间总是被更新。
发布于 2014-06-04 05:15:41
选择要编译的文件和不编译的文件与机器性能、编译和联动工具效率有很大关系。如果一个项目有大量的文件,而一个项目的构建需要几个小时,那么您显然希望尽可能多地排除不需要重新构建的文件。另一方面,对于简单的较小的项目,可能是可行的,只要完全处理所有的文件,每次。
对于处于这两个极端之间的项目,有必要研究机器处理简单日期、模式比较、计算散列和比较所需的时间。此外,比较哈希处理时间与通过构建步骤发送相同文件所需的时间也很重要。如果这些后期的时间甚至接近1:2的比率,您可能会更好地坚持简单的文件mod日期方法。
https://stackoverflow.com/questions/24029414
复制相似问题