Svn 在Subversion中保留文件创建日期
我的老板让我为他设置一个服务器,这样他就可以在不同的机器上同步共享他的所有文档,并且在没有互联网连接的情况下仍然能够访问这些文档 我已经为他准备好了,但现在他要求保留“创建日期”文件属性。我解释说,因为他下载了所有的文件,这是他们的创建日期,但他坚持认为我找到了一种方法来保存这些文件,因为这会影响他使用的桌面搜索代理。有没有办法通过Subversion将此属性设置为保留,或者我是否必须编写脚本来获取每个文件的日期,并在每次初始签出后让他运行“touch”Svn 在Subversion中保留文件创建日期,svn,tortoisesvn,Svn,Tortoisesvn,我的老板让我为他设置一个服务器,这样他就可以在不同的机器上同步共享他的所有文档,并且在没有互联网连接的情况下仍然能够访问这些文档 我已经为他准备好了,但现在他要求保留“创建日期”文件属性。我解释说,因为他下载了所有的文件,这是他们的创建日期,但他坚持认为我找到了一种方法来保存这些文件,因为这会影响他使用的桌面搜索代理。有没有办法通过Subversion将此属性设置为保留,或者我是否必须编写脚本来获取每个文件的日期,并在每次初始签出后让他运行“touch” 请注意,添加到SVN存储库的文档集可以追
请注意,添加到SVN存储库的文档集可以追溯到几年前,他希望在所有签出过程中保留这些日期。因此,Subversion最后一次更改的日期可能与他想要的日期相差几年。上次我检查Subversion时,无法保留原始文件的时间戳。使用TortoiseSVN
- 右键单击并选择OtteroiseSVN->Settings
- 选择将文件日期设置为“上次提交时间”
我认为这对您很有用。您可以使用Subversion文件属性来存储修改日期,但您必须在签入时编写自己的脚本来更新属性,并在签出时设置修改日期。抱歉-第一次误解了这个问题 一个选项可能是使用svnadmin dump和load命令
- 使用svnadmin Dump转储存储库
- 编写一个脚本来遍历输出,将SVN创建日期更新为源文件夹上的文件创建日期李>
- 使用svnadmin Load将更新的转储文件加载回
- 使用将文件日期设置为我先前建议的“上次提交时间”设置
这需要提前设置钩子pre-revprop更改。他想要的日期不是subversion日期,而是文件导入subversion存储库之前的日期。我更新了问题以反映这一点。或者,如果不使用Tortoise,请取消注释$HOME/.subversion/config中的行:“使用commit times=yes”。这非常有创意,谢谢您的回答。我老板晚上走后,我今晚就试试这个。但这需要一段时间来运行,因为他有11个文件出于好奇:它起作用了吗?11次演出花了多长时间?有趣的是,我有一个老板有一个几乎准确的要求。幸运吗?请注意,git svn或hgsubversion都不会在导入时恢复文件的创建日期。这方面是否有任何更新?SVN现在是否保留创建/修改日期?
svn propset svn:date --revprop -r HEAD "2007-04-22"