每个人的源控制?

时间:2008-09-08 17:13:17

标签: svn git version-control

我有很多非技术用户都共享一组项目文件。让他们使用版本控制是理想的,但我认为subversion和git对于非技术办公人员来说都太技术化了。

是否有适用于普通人的分布式源代码控制软件?

11 个答案:

答案 0 :(得分:17)

如果源代码控制过于技术化,则可以使用Subversion with WebDav

技术水平较低的人通常会从他们使用的任何应用程序中保存文件,而不必担心/考虑源代码控制。他们无需做任何事情即可获得自动版本控制的好处。

当他们需要更多功能时,他们可以学会使用TortoiseSVN来查看差异,恢复为他们自动制作的旧版本等等......

来自颠覆书:

  

由于许多操作系统已经集成了WebDAV客户端,因此该功能的用例与幻想有关:想象一下运行Microsoft Windows或Mac OS的普通用户的办公室。每个用户“安装”Subversion存储库,它似乎是一个普通的网络文件夹。他们一如既往地使用共享文件夹:打开文件,编辑文件,保存文件。同时,服务器自动对所有内容进行版本控制。任何管理员(或知识渊博的用户)仍然可以使用Subversion客户端来搜索历史记录并检索旧版本的数据。

答案 1 :(得分:14)

你试过Tortoise SVN吗?我无法想象源代码控制变得更容易使用。

答案 2 :(得分:3)

这听起来更像是BaseCamp SpiceBird 或SharePoint等协作工具的用例,而非“源代码管理”。这些工具与源代码控制具有相同的目标,但更适合Word文档类型的东西和相应的用户。这是IT人员在服务器上维护的另一个项目,但它也消除了某人的助手擦除您的代码的可能性。

答案 3 :(得分:2)

如果他们只需要一次编辑一个用户的Office文件,请使用适当的权限获取网络共享上的文件并在每晚备份。如果某人已打开它,Active Directory将警告他们。

如果它比办公室更复杂,请考虑Sharepoint。我认为SVN太复杂了,特别是因为二进制文件的冲突和比较,例如旧词文档真的不起作用。

答案 4 :(得分:2)

我会尝试使用TortoiseHG Mercurial进行资源管理器集成。

使用我可以毫无问题地使用它很容易:

  • 教给一个不那么精通电脑的同事一起写文本。
  • 通过安装Mercurial(TortoiseHG)通过电话引导朋友,创建一个存储库并将其设置为使用单独的push(他的)和pull(我的)存储库一起工作 - 在Windows机器上只安装一次(仅限I)运行GNU / Linux)。

由于它是完全分布式的,当它们破坏它们时它们不能破坏你的存储库 - 你可以简单地决定不拉动他们的更改或只拉出好的改变(例如避免这些巨大的二进制文件初学者倾向于在版本控制下)。

此后我转而使用Mercurial管理我的所有静态网站(以及一个自动上传网站到我的FTP服务器的推送上传钩子,所以我不必再担心了)。

答案 5 :(得分:1)

我认为最好的解决方案是让每个人都直接使用版本控制系统。如果您使用的是Windows平台,TortoiseSVN将是我的推荐。

如果直接使用TortoiseSVN太困难了,我在设置存储所有项目文档的Samba文件共享方面有很好的经验,并自动将其与Subversion同步。您失去了人们在其提交上撰写评论的好处,但在许多情况下,自动版本历史记录优于没有版本历史记录。这样,只要他们将文档保存在正确的位置,相关人员甚至不必知道版本跟踪。您需要同步的频率取决于文档更改的频率,但在我的情况下,每24小时进行一次同步就足够了。

注意:为了实现这一点,我必须编写一个自定义脚本,从存储库中检出最新版本,将其与本地副本进行比较,并发出svn(或cvs)个命令进行添加,删除并更新任何已更改的文件。我不确定是否存在一个通用(开源)解决方案来执行此操作,但我认为无论如何都不应该太难实现(我写了一个简单的脚本在几个小时内完成)。< / p>

答案 6 :(得分:1)

我目前正在探索SharePoint在类似环境中提供非技术友好且可靠的版本控制的程度。初步结果是“meh”。即使在我们得出结论的情况下,已经很清楚,修订控制需要用户对文档管理的态度发生重大转变。

现在,如果这是针对使用Apple Macs的团队,我认为不是,我强烈推荐Versions,这是一个非常直观的SVN客户端。这是第一个也是唯一一个我看过版本控制的软件,它的范例转换很容易被非程序员采用。

答案 7 :(得分:1)

我为subversion + webdav回答了一个howto:

http://timwise.wikispaces.com/document-versioning

答案 8 :(得分:0)

您是否尝试过Adobe的版本提示?这不是开源/免费的,但它可能更容易为最终用户使用。

http://www.adobe.com/products/creativesuite/versioncue/

答案 9 :(得分:0)

如果Subversion with TortiseSVN过于复杂 - 它可能是,因为版本控制是一个不同于Open,Modify,Save的整个范例 - 那么你可以用一个更简单的手版本控件启动它们:

myDocument中-20080908-beverlyd.doc

它简单易懂,您可以编写一个脚本,每晚或每周都会存档所有旧版本,因此它们实际上只能看到最新版本。

如果有人想看到差异,请教他们差异。

- 亚当

答案 10 :(得分:0)

“项目文件”可能含糊不清 - 如果有问题的文件主要不是ASCII文件,而且是Word文档或者你有什么,我不确定传统的源代码控制工具是否真的有效。

SVN等。人。很乐意支持二进制文件,但是如果您正在使用它,那么您并没有真正获得大部分有用的功能,并且通常最终会使非技术用户感到困惑。 SVN(和git等)是为程序员设计的工具 - 如果你只是在寻找管理文档修订和保存历史的好方法,我猜你的特定平台有更好的工具(尽管我不知道)知道足够推荐特定的一个。)

那就是说,如果它们主要是ASCII文件,我怀疑TortoiseSVN是你最好的选择。

相关问题