向非程序员解释SVN

时间:2008-12-04 19:03:55

标签: svn resources diagram

我与一些新的技术支持人员合作。有时,他们喜欢修复可能不是我们开发人员优先考虑的小问题。这需要向非程序员教授SVN基础知识,我发现这可能会有点棘手。

您认为哪些资源有用?您是否通常使用图表来教授SVN?

10 个答案:

答案 0 :(得分:6)

基本上你可以讨论SVN可以做什么,它不仅仅是代码,也可以用于任何文档。

不提及代码的示例将非常有用:

作者写了他的书并将其副本放在一个中心位置。该文件命名为1.当他进行更改时,他会将其副本命名为2.下一个副本将命名为3,依此类推。只要他能够访问该中心位置,他就可以随时参考以前的副本。

现在,出版公司已经为他的书分配了两个校对员。使用SVN,校对者能够纠正词汇错误并纠正错误并将更正后的副本放在中心位置。作者和校对者也能够获得最新的副本,他们可以阅读所做的更改,因为无论何时放置新副本,相关人员都可以撰写有关已更改内容的评论。

如果校对者发现逻辑错误和语法错误怎么办?他们不能简单地改变它并将新副本放到中心位置,因为他们不知道作者的意图,它可能是一种独特的写作风格(也就是故意偏离规范的东西)。他们可以使用错误跟踪软件,但这是另一个帖子。

答案 1 :(得分:6)

当我读到它时,这里有两件事。 1教他们这个概念,2他们教他们如何使用SVN。

通常保持简单,复杂性将在时间和使用中照顾自己。

  1. 简单来说,SVN是您正在处理的内容的备份,但是狡猾地只保存您所做的更改,而不是保存到您保存的每个版本,这样可以保持较小并且可以轻松地比较一段时间内的更改。 / p>

  2. 这里没有实际经验的替代品,向他们展示如何结账,更新和签到。我建议你使用Tortoise SVN,因为学习曲线会大大减少。

  3. 为了简单起见,我会建立他们自己可以提交的分支,因此他们不需要了解它,你只需在后台管理合并。但很快他们就会掌握它!

答案 2 :(得分:1)

显示问题版本控制解决方案应该是起点。 你可以先让他们先做.bak个文件来看点。

但如果他们对维基百科足够熟悉,那么向他们展示历史以及维基百科如何保护自己(它会回答他们的一些好奇心)会更好,所以他们认为它真的很有用在实践中。您可以安装一个wiki来尝试。

之后,将它们从svn的'无聊'文本命令中删除......

答案 3 :(得分:1)

我最近遇到了这个问题,因为我将SVN引入了整个Web开发团队(由程序员,界面构建者,图形设计师,内容编辑者,站点主持人和非技术经理组成)。我环顾四周寻找非技术性文件,但结果却很少,因此我决定建立自己的。不幸的是,大多数信息都要求用户了解客户端/服务器架构以及“分支”是什么 - 在我的情况下我无法假设。您可以在SlideShare上查看我的一个迁移前PowerPoints(“这是什么叫SVN?FTW或WTF?”)

http://www.slideshare.net/secret/wBsLzZb3O7cXCU

真正的关键是要解释SVN - 其核心 - 实际上只是一种更好的方法来处理复制和粘贴文件。摆脱default.bak,default2.asp,defaultBackup.asp,defaultMyCopy.asp等......是每个人都能理解的东西。

随着我的用户对源代码控制的概念越来越熟悉,我鼓励人们在我们的内部WIKI上提问,以便开发团队(和其他用户)可以帮助他们。

我们还构建了一个自定义SVN桌面工具,以一致的方式自动设置本地桌面,以确保整个公司的每个人都能保证与其他人(c:\ projects \ projectname)具有相同的设置,并且更新了本地IIS安装,以便他们可以随时在本地查看网站,而无需手动配置任何内容。

所以 - 提供大量手持 - 使用一些幽默 - 简单易用 - 保持标准化 - 提供一种询问方式问题 - 提供支持 - 确认您的用户以及他们“继续他们的一天”的需求。如果可能的话,坐在他们的办公桌前,让他们完成整个过程多次,让每个人都超越障碍

答案 4 :(得分:0)

我只想解释一下跟踪以前的修订很重要以及为客户提供分支的方案。

还有更多通用版本控制教程,这些教程并非特定于svn或其他可能有用的版本控制教程。

你不想压倒他们 - 只要给他们基本的需要。

答案 5 :(得分:0)

我发现SVN比CVS更容易解释,因为一切似乎都是文件夹(虽然它会使用浅拷贝)。只需用这种方式向他们解释。

不要详细解释所有内容,而只是告诉他们需要知道的基础。如果你开始解释分支和合并,你可能会看到他们的头部爆炸,或者他们会认为做出微小的改变是不值得的

答案 6 :(得分:0)

比喻怎么样,它给“trunk”,“branch”等命名?

答案 7 :(得分:0)

告诉支持人员SVN是源代码服务器,他们所做的更改是客户端更改。他们所做的是更改源代码的客户端副本。它应该发布到SVN以存储在那里。与任何其他客户端/服务器应用程序中的方式相同。

答案 8 :(得分:0)

告诉他们SVN除了编程之外还可以用于其他事情,这是一个好主意。配置文件,文档,基本上您需要版本化甚至只需备份的任何内容。

教他们关于存储库,其中存在所有文件和有关文件的不同版本的信息,以及有关您实际使用的文件的工作副本。

从简单的东西开始,比如检查文件和提交。提交文件就像是说:“我有一个新文件或一个新版本的文件”。向他们展示如何使用最新版本更新文件。

也许那时你可以开始告诉他们关于行李箱,分支和标签,合并以及所有爵士乐。一个很好的资源是那些真正学到了东西的非程序员。他们可能会使用更适合其他非程序员的短语和类比。

答案 9 :(得分:0)

我发现这篇文章对我们的新开发人员来说非常有用。图表很好,信息非常简单。

Branch Merging With Subversion

真正的诀窍是让他们了解分支的重要性,任何人都可以轻松掌握修订控制本身的概念。