当我在文件上运行svn info时,这是我输出的一部分:
Last Changed Author: [user]
Last Changed Rev: 269612
Last Changed Date: 2014-02-11 12:35:30 -0500 (Tue, 11 Feb 2014)
Text Last Updated: 2014-02-17 15:20:29 -0500 (Mon, 17 Feb 2014)
上次更新的文字是在上次更改的修订日期之后!如果没有提交更改,Subversion如何知道对文件文本的更改?这对我来说没有任何意义。
我想也许这意味着我本地版本的最后一次更改,但是我在18日运行了这个,就在我自己编辑文件之后。所以这似乎不是它。
(我试图弄清楚哪个版本在合并时犯了错误。)
答案 0 :(得分:2)
Text Last Updated
是Subversion用于查看文件是否已从文件的基本修订版(也称为原始版本)进行修改的时间戳。 Subversion尝试通过在工作副本中安装pristine版本时存储文件的时间戳和大小来避免需要读取整个文件来检测更改。
此日期几乎总是比LastChangedDate
更新(除了将svn:date
版本属性设置为不同于实际提交时间的日期之外)。
您可以通过在两个修订版之间的文件上运行更新来查看此日期更改。
例如:
$ svn info CHANGES | grep 'Text Last Updated:'
Text Last Updated: 2014-02-17 10:25:09 -0800 (Mon, 17 Feb 2014)
$ svn-trunk log --limit 2 CHANGES
------------------------------------------------------------------------
r1569069 | breser | 2014-02-17 10:25:49 -0800 (Mon, 17 Feb 2014) | 2 lines
* CHANGES: Update for 1.7.16 and mark 1.7.15 as not released.
------------------------------------------------------------------------
r1568070 | breser | 2014-02-13 14:28:41 -0800 (Thu, 13 Feb 2014) | 2 lines
* CHANGES: Update for 1.8.8, 1.8.7 will also not be released.
------------------------------------------------------------------------
$ svn up -r 1568070 CHANGES
Updating 'CHANGES':
U CHANGES
Updated to revision 1568070.
$ svn info CHANGES | grep 'Text Last Updated:'
Text Last Updated: 2014-02-18 15:20:44 -0800 (Tue, 18 Feb 2014)
$ svn up CHANGES
Updating 'CHANGES':
U CHANGES
Updated to revision 1569555.
$ svn info CHANGES | grep 'Text Last Updated:'
Text Last Updated: 2014-02-18 15:20:58 -0800 (Tue, 18 Feb 2014)
如果在本地修改文件时更新,该字段也将消失:
$ echo foo >> CHANGES
$ svn up -r 1568070 CHANGES
Updating 'CHANGES':
G CHANGES
Updated to revision 1568070.
$ svn info CHANGES | grep 'Text Last Updated:'
这是因为我们没有时间用来比较文件的短路,因为已知安装的文件版本会被修改。
还原文件,它会显示回来:
$ svn-trunk revert CHANGES
Reverted 'CHANGES'
$ svn info CHANGES | grep 'Text Last Updated:'
Text Last Updated: 2014-02-18 15:46:47 -0800 (Tue, 18 Feb 2014)
答案 1 :(得分:0)
您可以查看(和更改)修订属性,您知道吗?
Last Changed Date
是svn:date
,svn ps
可以更改
>svn info G1.txt
...
Last Changed Rev: 5
Last Changed Date: 2014-02-07 12:06:56 +0600 (Пт, 07 фев 2014)
Text Last Updated: 2014-02-07 11:44:04 +0600 (Пт, 07 фев 2014)
和
>svn pl -r 5 --revprop -v
Unversioned properties on revision 5:
...
svn:date
2014-02-07T06:06:56.711384Z