5

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

您发现哪些资源有用?是否有您通常用来教授 SVN 的图表?

4

10 回答 10

6

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

通常保持简单,复杂性会及时处理和使用。

  1. 简单地说,SVN 是您正在处理的内容的备份,但巧妙地只保存您所做的更改,而不是您保存到它的每个版本,这样可以保持它很小,并且可以轻松地让您比较随时间变化的变化。

  2. 这里无可替代的实践经验,向他们展示如何结帐、更新和签入。我建议您使用 Tortoise SVN,因为学习曲线大大降低。

为了简单起见,我会建立他们自己的分支,他们可以提交,所以他们不需要理解这一点,你只需在后台管理合并。但很快他们就会掌握窍门!

于 2008-12-04T19:58:05.703 回答
6

基本上你可以讨论 SVN 可以做什么,它不只是用于代码,而且可以用于一般的任何文档。

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

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

现在,出版公司为他的书指派了两名校对员。使用 SVN,校对人员能够更正词汇错误并更正它们,并将更正的副本放在中心位置。作者和校对人员也可以获得最新的副本,并且他们可以阅读所做的更改,因为每当放置新副本时,相关人员都可以对已更改的内容发表评论。

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

于 2008-12-04T19:22:44.807 回答
1

Showing them the problem version control solves should be the starting point. Either you could make them first do .bak files first to see the point.

But if they are sufficiently familiar with Wikipedia, it would be definitively better to show them history and how wikipedia protects itself (it would answer some of their curiosity), so that they see it's really usefull in practice. You could install a wiki to make them try.

Only afterwards, put them in from of the 'boring' textual commands of svn...

于 2008-12-04T19:35:40.257 回答
1

我最近在将 SVN 介绍给整个 Web 开发团队(包括程序员、界面构建者、图形设计师、内容编辑器、站点管理员和非技术经理)时遇到了这个确切的问题。我四处寻找非技术文档,但最终得到的可用文档很少,所以我决定自己构建。不幸的是,那里的大多数信息都希望用户了解客户端/服务器架构以及“分支”是什么——在我的情况下,我无法假设。您可以在 SlideShare 上查看我的一个迁移前 PowerPoint(“这东西叫 SVN 是什么?FTW 还是 WTF? ”)

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

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

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

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

所以 -提供大量的帮助-使用一些幽默-让事情变得简单- 保持标准化 - 提供一种提问的方式 -提供支持- 识别您的用户以及他们“继续他们的一天”的需求。如果可能的话,坐在他们的办公桌前,尽可能多地引导他们完成整个过程,以使每个人都克服障碍

于 2008-12-04T21:16:18.773 回答
0

It can be a good idea to tell them that SVN can be used for other things besides programming. Configuration files, documents, anything basically that you need versioned or even just backed up.

Teach them about the repository, in which all the files and the information about the different versions of the files exist, and about the working copy which are the files that you actually work with.

Start with the simple stuff like checking files out and committing. Committing files is like saying: "I have a new file or a new version of a file". Show them how to keep the files updated with the newest versions.

Maybe then you can start telling them about the trunk, branches and tags, merging and all that jazz. A great resource are the non-programmers who've actually learned something. They can probably use phrases and analogies that are more suitable for other non-programmers.

于 2008-12-04T19:49:47.310 回答
0

我只想解释一个场景,即跟踪以前的修订版以及为客户建立一个分支很重要。

那里有更通用的版本控制教程,它们不是特定于 svn 或其他可能有用的。

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

于 2008-12-04T19:06:26.073 回答
0

我发现 SVN 比 CVS 更容易解释,因为一切似乎都是文件夹(尽管它会使用浅拷贝)。就这样向他们解释。

并且不要详细解释所有内容,而只是在需要知道的基础上告诉他们。如果您开始解释分支和合并,您可能会看到他们的头脑爆炸,或者他们可能会认为只是不值得为进行小改动而付出努力

于 2008-12-04T19:07:16.163 回答
0

以“树干”、“树枝”等命名的比喻怎么样?

于 2008-12-04T19:09:19.543 回答
0

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

于 2008-12-04T19:15:07.410 回答
0

我发现这篇文章非常适合我们的新开发人员阅读。图表很好,信息也很简单。

分支与 Subversion 合并

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

于 2008-12-04T22:18:31.957 回答