跟踪目录树随时间的变化

时间:2008-10-02 15:10:30

标签: svn version-control visual-sourcesafe perforce deployment-project

是否有人知道应用程序或系统是否随着时间的推移跟踪更改(文件添加/删除文件,文本文件上的差异)到非源控制目录?可以让你

的东西
  1. 在A时刻拍摄某个目录树的快照

  2. 在时间段B回来看看有什么变化

  3. 在时间段C回来看看自时间段A以来发生了什么变化,以及自时间段B以来发生了什么变化

  4. 源控件存储库不是此处的选项。我想要一些适用于不受任何修订控制的目录结构的东西。我的小组无法控制所讨论的服务器或目录树,但对这些树的更改会影响我们,我们希望跟踪它们。 “源控制”的对象是

    1. 对任何类型的集中存储库的异议,要求文档作者签入,签出。

    2. 反对必须手动滚动/自动化一系列可以利用版本控制系统功能集的任务

    3. 我想要一个半成熟的软件包,人们花了一些时间来思考这个问题。如果有一个版本控制系统是为了处理这种事情而构建的,那么它就适用了。

7 个答案:

答案 0 :(得分:4)

编写一个脚本化的计划任务,将目录树复制到另一个地方,也许是在另一台机器上,这是版本控制的存储库的一部分。然后,计划任务将使用您选择的版本控制系统自动提交更改(Mercurial应该可以很好地用于此系统,因为hg commit -A -m "automated snapshot"将快速执行您需要的操作而无需任何交互式提示。)

我建议复制的rsync可用于许多平台,并且快速有效,因为它不会复制未更改的文件。配置副本以从副本中删除已在主目录中删除的文件。

答案 1 :(得分:3)

你的选择真的是:

  1. 完全源代码管理
  2. 源代码控制'lite'的形式类似FileHamster
  3. 差异备份/恢复设施
  4. 完整备份/恢复和差异工具
  5. (我认为)一个日记文件系统。
  6. 只有一个标准目录,如果不在其他地方保留副本,就没有办法实现这一点,这实际上意味着它是一个源代码控制存储库。

答案 2 :(得分:0)

我喜欢像牛奶一样的外观,味道和气味。但它不应该是牛奶。

换句话说:你正在描述一个vcs。如果你告诉我们为什么不能使用vcs,可能会更容易回答。

我唯一可以想到的是Apple的Time Machine,它(再次)基本上是群众的vcs。

答案 3 :(得分:0)

按设定的间隔自动将其提交到版本控制。如果您不希望目录中有任何额外的文件/目录,但您选择的存储库需要它们在工作副本中,那么请将该目录的内容复制到单独的工作副本中。

答案 4 :(得分:0)

您需要源代码管理系统或文档管理系统。

为什么源代码管理不是一个选项? SVN易于使用Tortise SVN windows集成的非程序员。'

听起来你没有很多服务器选项....

这个怎么样?  1.在计算机上设置SVN存储库  2.每晚从目录复制到您的计算机并提交更改。

或... 使用Windows“搜索”命令查看过去n天内更改的文件。每周手动运行报告。或者为该报告编写自动化。

答案 5 :(得分:0)

您所描述的是版本控制系统?!所以我不确定我理解为什么你不想安装一个。您可以通过应用程序非常轻松地实现SVN / CVS的本地版本和接口(例如,添加新文件,删除旧文件)。这可以使用计划任务或其他任务定期完成。

我还没有听说过任何你可以使用的“简单”的东西。我想因为它已经完成了;)所以为什么重新创建轮子......

我想你可以看一下开源备份软件包。它们必须具有一些逻辑来跟踪用于增量备份的文件更改。他们可能不会跟踪文件更改..

答案 6 :(得分:0)

这是一个解决方案:

使用subversion本地存储库并使用计划任务,该任务将定期提交您的文件(每小时一次?)

一个简单的例子:

您要跟踪的目录: 的 C:\ tracking_dir

您存储差异数据和其他历史信息的目录: 的 C:\存储库

  1. svnadmin create c:\ repository
  2. svn co file:/// c:/ repository c:\ tracking_dir \
  3. 设置应运行此命令的计划任务:

    svn添加c:\ tracking_dir *。*
    svn ci c:\ tracking_dir *。* -m“通过计划任务自动提交”

  4. 通过这种方式,您有一个正在运行的示例,可以通过任何subversion前端访问历史记录