如何获得Git版本历史嵌入到源代码



在SO中,有一些关于如何让Git自动附加文件更改细节的问题(例如作者,日期,版本号,更改的简短描述等),使用类似于在RCS/CVS和大多数其他系统中使用的关键字/标签/哈希。没有明确的答案,如何做到这一点-主要是警告不要这样做。

我确实意识到使用Git自己的历史记录方法可以获得相同的信息,但是在现实生活中,当程序员已经习惯了旧的方法时,将文件的版本历史记录嵌入到文件的头文件中只会使工作更容易。

问题:如何在提交阶段将更改信息自动插入文件头?

我还是不明白,为什么(需求管理方面)一开始没有在Git中指定这个特性

因为你应该从Git本身获取信息,而不是从文件内容(由Git管理)

话虽这么说,我也见过其他的方法,比如生成一个包含所有需要的Git元数据的文件(在所有提交之后完成),并打包在可交付的中,意思是:

  • 不是源代码(由Git管理)
  • 而是编译后产生的最终结果。

这样,最终的程序在执行过程中仍然可以访问这些元数据。

最新更新