2

构建系统,如 make 使用时间戳检查在两次构建期间是否更改了依赖项。以下是我在使用时间戳时遇到的一些常见问题

  • 打开一个文件,进行一些更改,但后来,我认为它不好。例如,git checkout -- file如果我在项目中使用 git,我会还原更改。
  • 打开一个文件,我只是不小心按了键盘快捷键来保存编辑器

无论哪种方式,文件的时间戳都会更改。如果现在我想构建项目,则需要重建依赖于该文件的所有内容。这通常意味着整个项目。

反正有这些问题吗?例如,使用版本控制检查文件更改的构建系统,最好是 git。或欢迎任何其他解决上述问题的方法。

提前谢谢了。

4

1 回答 1

2

SCons默认使用校验和,而不是时间戳。但是,校验和需要读取磁盘上所有源文件的所有内容,这比简单地读取目录条目要慢得多,这就是大多数构建系统使用时间戳的原因。

软件构建系统很好地概述了这些问题。

于 2012-11-16T18:51:37.703 回答