Svn 每个人的源代码控制?

Svn 每个人的源代码控制?,svn,git,version-control,Svn,Git,Version Control,我有很多非技术用户,他们都共享一组项目文件。让他们使用版本控制是很理想的,但我认为subversion和git对于非技术性的办公室工作人员来说都太技术化了 有没有适合普通人使用的分布式源代码管理软件?您试用过Adobe的版本提示吗?这不是开源/免费的,但对最终用户来说可能更容易使用 你试过了吗?我无法想象源代码管理会变得更容易使用。如果使用TortiseSVN的Subversion太复杂了-而且可能是这样,因为版本控制是一个与“打开”、“修改”、“保存”完全不同的范例-那么您可以从一个更简单的手

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


有没有适合普通人使用的分布式源代码管理软件?

您试用过Adobe的版本提示吗?这不是开源/免费的,但对最终用户来说可能更容易使用


你试过了吗?我无法想象源代码管理会变得更容易使用。

如果使用TortiseSVN的Subversion太复杂了-而且可能是这样,因为版本控制是一个与“打开”、“修改”、“保存”完全不同的范例-那么您可以从一个更简单的手动版本控制开始:

myDocument-20080908-beverlyd.doc

它简单易懂,你可以编写一个脚本,每天晚上或每周归档所有旧版本,这样他们就只能看到一两个最新版本

如果有人想看到差异,教他们区别


-Adam

如果源代码管理过于技术化,他们可以使用

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

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

从《颠覆》一书中:

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


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

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


注意:为了实现这一点,我必须编写一个自定义脚本,从存储库中签出最新版本,将其与本地副本进行比较,并发出
svn
(或
cvs
)命令来添加、删除和更新任何更改的文件。我不确定是否有一个通用的(开放源码)解决方案可以做到这一点,但我认为自己实现起来应该不会太难(我编写了一个简单的脚本,在几个小时内就可以实现了)。

这听起来更像是SharePoint之类的协作工具的用例,而不是“源代码控制”这些工具的目标与源代码管理相同,但更倾向于Word文档类型的东西和相应的用户。这是It人员在服务器上维护的另一项,但它也消除了有人的助手删除您的代码的可能性。

“项目文件”可能含糊不清-如果所涉及的文件主要不是ASCII文件,而是Word文档或您拥有的其他文件,我不确定传统的源代码管理工具是否真的有效

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


这就是说,如果它们大多是ASCII文件,我怀疑OrtoiseSVN是您最好的选择。

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

现在,如果这是针对使用苹果Mac的团队,我想不是,我强烈推荐,这是一个非常直观的SVN客户端。这是我见过的第一个也是唯一一个版本控制及其范式转换被非程序员轻松采用的软件

如果他们不经常一次只需要一个用户编辑Office文件,请在具有适当权限的网络共享上获取这些文件,并每晚备份。如果有人已经打开了Active Directory,Active Directory将向他们发出警告


如果它比Office更复杂,考虑SharePoint。我认为SVN太复杂了,尤其是因为二进制文件(如旧word文档)的冲突和比较不起作用。

我会尝试Mercurial与Explorer集成

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

  • 把它教给一个不懂电脑的学生,让他们一起写文章
  • 通过电话指导朋友安装Mercurial(TortoiseHG),创建存储库,并使用单独的push(his)和pull(mine)rep将其设置为一起工作