我想在 Windows XP 中设置一个存档文件夹,这样我就可以放置同一文件的多个不同版本,并让其存储每个版本。我设想它的工作方式类似于回收站,你可以将同一个文件放置 10 次,它会存储每个版本。有人知道我该怎么做吗?
谢谢!
编辑:在这种情况下,使用版本控制系统完全是小菜一碟。我可能只是编写一个脚本,在将文件添加到文件夹时为其附加日期/时间戳。
答案1
此批处理文件将您的文件复制到“_bpath”(根据需要设置)并向其中添加实际日期、小时、分钟和秒。
@echo off
Set _bpath=T:\Temp\
if [%1]==[] goto :eof
:loop
Set _file=%~n1%
Set _ext=%~x1%
For /f "tokens=1-3 delims=1234567890 " %%a in ("%time%") Do Set "delims=%%a%%b%%c"
For /f "tokens=1-4 delims=%delims%" %%G in ("%time%") Do (
Set _hh=%%G
Set _min=%%H
Set _ss=%%I
Set _ms=%%J
)
copy %1 "%_bpath%%_file%(%date:/=-% %_hh%h%_min%m%_ss%s)%_ext%"
shift
if not [%1]==[] goto loop
为了方便起见,你可以将此批处理文件复制到“发送到”右键菜单中%APPDATA%\Microsoft\Windows\SendTo
或者如果你需要更高级的功能,可以使用一个模仿 mac osx 时间机器的软件,比如科摩多时光机(免费)或精灵时间轴(35 美元),可能是个不错的选择。
答案2
我建议使用实际的版本控制系统。其中许多都有 Windows 客户端和/或 shell 集成。以下是一些示例:
- Mercurial(带有 TortoiseHG)
- Git
- Subversion(使用 TortoiseSVN)
- CVS (使用 TortoiseCVS)
Windows Vista 和 Windows 7 具有系统还原功能,它允许您分配一定比例的硬盘空间用于备份旧文件版本。这可能更接近您想要的功能,但缺点(除了您运行的是 WinXP)是您无法明确指定要对哪些文件进行版本控制——因此,如果您没有为系统还原分配足够的硬盘空间,您可能会丢失一些旧版本的文件。
答案3
古老的 RCS 虽然只是文本,但非常轻量,是我解决同一问题的解决方案。有更现代的 VCS 非常适合多文件和多开发人员项目,但对于一次管理一个文件的人来说,RCS 正合适。
答案4
就我个人而言,我使用TortoiseSVN。它并不是您要求的拖放解决方案,但它与 Windows 资源管理器完美集成,易于使用且非常可靠。另外,它的价格是我最喜欢的(免费)。