我应该如何使用Subversion处理pdf,word文档和Excel电子表格?

时间:2011-08-11 15:45:48

标签: svn version-control tortoisesvn

我在目前的职位上使用Subversion只用了一年多。这是我在这里做的第一件事。我立即实现了它,因为没有任何类型的版本控制。

去年,我将整个网站导入Subversion。我完全按原样导入它,垃圾和所有。 PDF,图像,首页_vti_cnf文件夹,一切。

我觉得这可以让我安全地对网站进行任何更改,并给我一个起点,以便能够跟踪更改进度等...

现在一年后,我对我设置的一些方式感到有些不安。主要是我想找出一种更好的方法来处理二进制文档。 我不想将二进制文件放在我的存储库中。周期。

请注意

图片,不同。 TortoiseSVN可以比较图像,它们是不同的动物。它们会影响网站的外观或感觉。这不是pdfs,word docs,excel,访问dbs,zip文件,电影等的情况......


以下是我们如何管理网站更新到生产的过程。网站更新每周完成一次,网站更新后我为该周创建了一个标记的副本。

  1. 我收到使用新版本更新pdf的请求,并更改超链接文本以获得一些新描述
  2. 我将我的工作副本更新到最新版本,我将html代码更改为该网站。
  3. 我将pdf文件的新版本复制到我的工作副本中,用新版本替换旧版pdf。
  4. 此时,我的工作副本显示了2个挂起的更改,但实际上只有一个是代码更改。 PDF只是内容。
  5. commit都改变了我的回购。
  6. 现在是时候进入生产阶段,我将我的主干与上周的标签文件夹进行比较。
  7. TortoiseSVN只能生成需要在生产时更新的文件,并带有完整路径。我这样做,所以我总是可以将根复制到生产站点。
  8. 我将文件和空文件夹结构导出到另一个团队选择它并将其复制到生产的位置。
  9. 因此,使用此方法,代码更改和PDF都将转移到生产中。但是,我不喜欢它。

    我的另一个问题是,在不使用上述过程的情况下,我也不相信我的记忆会在每次移动到制作过程中都记住,以便在转移到制作之前手动将pdf复制到我的变更集中。

3 个答案:

答案 0 :(得分:1)

您是否考虑使用Nexus或Artifactory等内容存储这些文件?是的,这些程序用于管理Maven存储库,但没有理由必须使用Maven来使用它们。

优点:

  • 通过Web界面,他们可以将文档自身下载到存储库中。这消除了“手指o'责备”可以指向你的一点。不再,“你把错误的副本放入发行版。不,你给了我错误的副本。”参数。
  • 执行发布时,您可以通过构建过程自动获得所需的修订。
  • 文件仍处于“版本化”状态。它们不在版本控制系统下,将它们存储为差异,但如果你必须重做上个月的版本,那么你可以使用正确版本的PDF。
  • 他们可以在下个月发布的文档中添加,而不是等到最后一分钟。您将获取本月发布的文件,因为您知道该版本。使用Subversion,您可能正在使用最新版本。

另一种可能性是使用Dropbox之类的东西。界面非常简单,即使是经理也可以使用它。而且,作为奖励,Dropbox还会为您提供所有文档的版本。您和他们之间创建了一个共享的Dropbox,他们只需将他们想要的文档放在该目录中。

Subversion的问题不是二进制文件,而是因为Subversion对于没有技术培训的人来说太复杂而无法处理。 (因此,您获取文件并将它们放入存储库中)。像Artifactory或Nexus这样的发布存储库可以让你脱离循环。

答案 1 :(得分:0)

听起来网站的内容会被网站编码团队以外的其他人更新。让我们称这些疯狂的内容更新者为“营销”,只是为了好玩。现在,流程是他们将文件提供给您,您将其签入,然后将其推送到您的生产团队。

将文件置于版本控制中不是问题;问题是你是中间人。你永远不会拒绝PDF更新,那么为什么要把自己放在那个位置呢?不要成为中间人;努力实现脱媒。之一:

A。授予营销许可,直接在Subversion中更新文件,或者    B。与制作团队合作,为Marketing提供一个可以直接传送文件的独立位置。

请注意,营销可能仍然可以从版本控制中获取PDF文件(或者更好的是,它们生成PDF的源文件)中获益;你显然知道好处,所以也许你可以说服他们(告诉他们如何差异!)。但它不一定是你的存储库,如果由于某种原因你真的反对它。

答案 2 :(得分:0)

我打算在svn中创建第二个回购。称之为htdocs,它可以根据需要变得臃肿。

我将它作为svn:external链接到我的实际存储库。

不用大惊小怪。没有麻烦。