75

我负责大约 100 多份文档(word 文档,不是源代码),需要我部门的不同人员进行修改。目前所有文档都在一个共享文件夹中,他们将在其中检索、修改并保存回该文件夹。

我现在正在做的是在共享文件夹中查找“修改日期”,打开最近修改的文档并使用 MS Word 中的“跟踪更改”功能来应用更改。我觉得这有点乏味。

那么如果我在版本控制数据库中提交它会更好更容易吗?

基本上我想保留不同版本的文件。


我从答案中学到了什么:

  • 使用 Time Machine 保存不同的版本(或 Vista 中的 Shadow Copy)

  • 使用版本控制应用程序时,文本和二进制文档之间存在差异。(我不知道)

  • Diff 不适用于二进制文件

  • 修订通知系统(即电子邮件)很棒

  • 谷歌文档修订功能。

更新

我试用了 Google Docs 修订功能,觉得它几乎适合我。对过于频繁的版本控制(自动保存)有点恼火。

但对我来说感觉对的并不意味着对我的部门感觉对。他们可以用 Google 保存所有这些文档吗?

4

20 回答 20

60

我在 SVN 中处理过 Word 文档。使用TortoiseSVN,您可以轻松区分 Word 文档(在工作副本和存储库之间,或在两个存储库修订版之间)。它真的很漂亮,绝对推荐。

如果您在 SVN 中使用 Word 文档,另一件要做的事情是将svn:needs-lock属性添加到 Word 文档中。这将防止两个人尝试同时编辑同一个文档,因为不幸的是没有合并 Word 文档的好方法。

有了以上两点,处理受版本控制的 Word 文档至少是可以忍受的。它肯定优于使用共享文件夹和跟踪更改的替代方案。

于 2008-08-27T10:37:06.333 回答
38

你们到底在谈论什么 Word-is-binary-so-no-diff 人?例如,TortoiseSVN 直接与 Word 集成,使您能够使用 Word 的内置差异和合并功能。它工作得很好。

我从事将文档存储在版本控制中的项目。它运行得很好,尽管如果人们不熟悉版本控制,他们可能会在诸如“工作副本”、“合并”和“冲突”之类的概念上遇到困难。在规划文档管理系统时,不要高估用户的能力。

我相信所有这些都存在强大而强大的商业解决方案。我敢肯定,如果你有足够的千美元,你就能得到完全符合你需求的东西。文件管理系统是大企业的大生意。

于 2008-08-27T12:27:06.617 回答
19

我想似乎没有人问过的一件事是您是否有法律要求存储文档更改的历史记录?

无论您是否愿意,都会对您可以考虑的解决方案产生影响。

过期副本的通知机制也很有趣。如果工程师 A 有一份文档副本,然后工程师 B 对其进行编辑并提交您希望工程师 A 收到其副本已过期的更改。

文档控制很容易变成真正的蠕虫罐头。

也许将文档保存在 CVS 或 SVN 下并进行设置,以便在更新同一文档时向已签出副本的人生成电子邮件。已签入到存储库?

编辑:我忘了添加不要忘记在添加新文档时使用二进制开关,例如 CVS 的 -kb。否则,您将获得与 ascii 匹配的任何数据序列,其中包含附加了相关配置管理数据的关键字字符串,从而破坏了您的文档。数据。

于 2008-08-27T10:01:47.277 回答
10

开箱即用,迁移到 Wiki 是不可能的吗?

由于您认为强制用户使用 Subversion(或类似的东西)是可行的,因此似乎可以接受更大的更改。

另一个迁移目标可能是使用某种结构化的 XML 文档格式(想到DocBook )。这将使您能够真正使用差异和源代码控制,同时免费获得各种文档格式。

于 2008-08-27T10:23:10.907 回答
6

Sharepoint在版本控制特定于 MS 的文档方面也做得很好(还不错)。

于 2008-08-27T12:19:31.703 回答
6

试试怎么样git,看来git可以支持word.doc和打开文档.odf文件,如果你在.gitattributesfile中配置的话。

这是一个参考,向下滚动到diffing 二进制文件。

于 2011-12-15T23:13:02.800 回答
4

值得一提的是,还有Google Docs。我想这不是一个完美的选择,但它的版本控制非常方便。

于 2008-08-27T14:52:27.907 回答
2

Clearcase 与 Word 集成以进行修订跟踪。我相信 Telelogic DOORs 也是如此。

于 2009-05-24T15:04:47.640 回答
2

我将 Mercurial 与 TortoiseHg 叠加层一起使用。我可以右键单击一个变更集,选择“Visual Diff”,然后选择“docdiff”工具(捆绑提供),它会在 Word 中启动带有 Track Changes 的文档。

于 2012-04-17T03:47:16.767 回答
1

您可以,但您总是会将文档版本与 Word 本身进行比较。

我还没有听说过可以跟踪 Word 文档更改的版本控制数据库。

但是有一些工具可以比较 Word 文档,所以如果您将版本控制客户端设置为使用这些工具进行比较,您可以获得一些乐趣。

于 2008-08-27T09:46:18.657 回答
1

不必要。这取决于新文件提交到 repo 的频率。如果在提交之前对文件进行了多次编辑,那么您正是现在所在的位置。最大的好处是文件是否损坏。

您可以对任何文件进行版本控制;例如,这就是 Mac OS X Leopard 中的 Time Machine 的工作方式,还有一篇有趣的文章,作者将他的整个计算环境提交到 CVS 中,然后只在他的家庭和工作机器上维护工作副本。

但是“更好”和“更容易”是针对您的情况的,我不确定我是否完全理解您的问题。

于 2008-08-27T09:51:00.050 回答
1

Subversion、CVS 和所有其他源代码控制系统不适用于 Word 文档和其他办公文件(例如 Excel 电子表格),因为文件本身是以二进制格式存储的。这意味着您永远不能返回并注释(或责备,或任何您想称呼它),或在文档之间进行差异。

那里有 Word 文档的修订控制系统,不幸的是我不知道有什么好的。我们在工作中使用此类 Excel 控制系统,不幸的是它们都需要花钱。

好消息是它们让生活变得更轻松,尤其是在您必须进行审计或尽职调查的情况下。

于 2008-08-27T10:07:28.167 回答
1

如果您使用WinMerge,它增加了对合并 Word 和 Excel 二进制文件的支持。

于 2008-08-27T11:44:32.053 回答
1

看看Sharepoint。如果成本是一个问题,Sharepoint 门户服务也可以为您服务。阅读本文了解更多信息

于 2008-08-27T14:33:03.817 回答
1

只是想澄清某人给出的答案,但我还没有足够的分数。

diff 将适用于二进制文件,但它只会说一些不太有用的东西,比如“toto1 和 toto2 二进制文件不同”。

于 2008-08-27T15:00:39.960 回答
1

你可以使用 Revisionator 之类的东西,它类似于 google 文档,但具有内置的修订控制,包括差异、分叉和 3 路合并。http://revisionator.com

更新:它还解决了您在 Google Docs 中提到的过于频繁的自动保存问题。它仍然会自动保存以防止数据丢失,但它只会在您明确“发布”您的更改时在修订历史记录中创建一个新版本并与其他用户共享。

于 2012-06-12T19:34:52.620 回答
0

您可以这样做,但如果该文件是二进制文件,您应该在编辑之前始终锁定它。您不会遇到冲突(这是无法解决的)。

于 2008-08-27T09:46:06.643 回答
0

许多新的版本控制项目更适合整个目录,而不是单个文件。

当他们只想更新单个文件时,说服某人他们需要完成整个项目可能是度过一个下午的“有趣”方式。

于 2009-05-24T14:45:01.813 回答
0

您拥有的另一个选择是一款名为 Dropbox 的软件和云计算魔法。或者,您可以放弃 word 文档并改为创建本地共享的 mediawiki。

DropBox:getdropbox DOT com

MediaWiki:mediawiki DOT 组织

于 2009-05-24T14:48:17.020 回答
0

是的,它适用!我完全同意 SVN+TortoiseSVN 组合非常适合跟踪 MS Office 文档。您可以锁定文档以进行编辑,写保护所有未锁定的文件以避免冲突(即并行修改),区分同一文件的两个版本,查看所有修改的历史记录,当然还有回滚到旧版本。
我试图在一篇专门的博文中描述所有这些技巧。(免责声明:我是博客所有者

所有这些甚至可以通过 SVN Web 客户端从 Web 访问!(可能需要一些软件开发)

但是,如果您不习惯在其他情况下使用版本控制系统,这可能不是显而易见的选择。与文档良好集成所需的工作为专用工具提供了优势:“电子文档管理”系统就是为此而设计的。出于成本原因,像 SVN 这样的 VCS 可能仍然是一个不错的选择:-)

你测试过在线服务Simul吗?看起来很有希望,我个人喜欢类似 GitHub 的方向。请注意,我不隶属于 Simul!

于 2019-01-03T21:47:12.767 回答