【发布时间】:2026-02-15 01:05:02
【问题描述】:
是否有适用于 Windows 的工具可以读取 Delphi 历史文件。
并提取每个会话编写的代码行以及会话的时间戳。
我想要什么信息
session_id date+time filename lines_of_code changed
1 1-1-2011 - 13:14:36 unit1.pas 100
....
我必须从中提取什么信息
我正在使用 Delphi 2007。
源文件中的每一次更改都会写入一个名为 history 的子目录,如下所示:
name date_changed type size
project1.dpr.~1~ date-time ~1~ 1 kb
project1.dpr.~2~ date-time ~2~ 1 kb
unit1.pas.~1~ date-time ~1~ 83 kb
...
每个历史文件都包含完整的源代码,而不仅仅是差异。
(因此,如果您想恢复到源文件,您可以只对旧文件进行编码)
不是颠覆
未来我将使用颠覆程序来跟踪这些东西,但对于过去的东西我也想有一些记录。
因此,除非 subversion 克隆可以索引 history 文件夹中的旧源文件备份,否则我现在不会寻找它。
【问题讨论】:
-
我从未见过能够准确处理编程会话中发生的事情的自动化工具。当您尝试从历史文件的时间戳推断所花费的时间时,情况将更加如此。查看但不更改文件怎么办?那是花在问题上而不是改变上的时间。改变一大堆,然后不保存而是重新加载怎么样。那是不会记录的编辑时间。反过来说:你有一个文件打开了 x 小时,但只在编程会话结束时查看它,当你更改用户消息中的单个字符时......
-
diff 工具需要提取在文件的 2 个存储版本之间更改的代码行。
-
那么问题标题中的“时间花费”呢?
-
这将是一个不错的奖励,但您可以从 #of 行数和时间戳中推断出很多。
-
你应该试试Windiff,它有一个非常好的GUI,而且它是开源的。
标签: delphi delphi-2007 static-code-analysis lines-of-code