7

我的老板让我设置一个Subversion服务器供他使用,这样他就可以在不同的机器上同步共享他的所有文档,并且在没有 Internet 连接时仍然能够访问它们。

我为他准备好了,但现在他要求保留“创建日期”文件属性。我解释说,因为他下载了所有创建日期的文件,但他坚持要我找到一种方法来保存它,因为它会影响他使用的桌面搜索代理。有没有办法设置这个属性通过 Subversion 保留,或者我是否必须编写一个脚本来获取每个文件的日期并让他在每次初始签出后运行“触摸”?

请注意,添加到 SVN 存储库的文档集可以追溯到几年前,他希望在所有结帐时保留这些日期。因此,Subversion 上次更改的日期可能与他想要的相差数年。

4

5 回答 5

5

使用 TortoiseSVN

  • 右键单击并选择 TortoiseSVN -> 设置
  • 选择将文件日期设置为“最后提交时间”

我认为这对你有用。

于 2008-09-23T15:29:47.783 回答
3

对不起 - 第一次误解了这个问题。

一种选择可能是使用 svnadmin 转储和加载命令。

  • 使用 svnadmin dump 转储存储库。
  • 编写一个脚本来搜索输出,将 SVN 创建日期更新为源文件夹上的文件创建日期。
  • 使用 svnadmin load 重新加载更新的转储文件。
  • 使用我之前建议的将文件日期设置为“最后提交时间”设置。

我不确定这是否可能,但我想它会是。我似乎记得当我从 SourceSafe 转移到 Subversion 时有一个脚本做了类似的事情——我会看看能不能找到它。

编辑:是的,你也许可以从这里(http://www.pumacode.org/projects/vss2svn)抄下一些代码

于 2008-09-23T16:02:48.093 回答
2

查看属性“svn:date”:

svn propset svn:date --revprop -r HEAD "2007-04-22"

Which requires a hook pre-revprop-change to be set up in advance.

于 2011-09-09T18:43:35.527 回答
0

上次我检查 Subversion 没有办法保留原始文件的时间戳。

于 2008-09-23T15:28:44.557 回答
0

您可以使用 Subversion 文件属性来存储修改日期,但您必须编写自己的脚本来在签入时更新属性并在签出时设置修改日期。

于 2008-09-23T15:57:55.907 回答