网站导航
登录信息

用户名 :

密 码 :

验证码 :

忘记密码

请输入您的Email地址及用户名,系统确认匹配后会将密码重置地址发送到您的邮箱。

用户名:

Email:

注册帐号

注册及创建本站帐户只需5秒。

点击创建帐户

使用帮助文档

让我们从零开始,Step By Step地尝试使用Svn Hosting及Subverson这个超级工具来革新我们的开发流程。

第一步,注册帐号并新建项目

  1. 首先你需要先注册一个Svn Hosting的帐号并成功激活;
  2. 登录后,点击“我的项目”,在里面新建一个项目;
  3. 新建成功后,点击该项目的详细页,复制“SVN地址”的链接。
第二步,checkout
  1. 下载和安装SVN的客户端TortoiseSVN, 安装完成后不需要重启,但重启完可以看到资源管理器里文件夹图标的更新。
  2. 从Svn Hosting上Checkout源代码-TortoiseSVN是一个资源管理器的插件,安装完成以后,鼠标右键点任何文件夹或者桌面都有TortoiseSVN的菜单项。选择SVN Checkout,如下图示:
  3. 填写源代码的SVN路径和本地文件夹。就是刚刚你在Svn Hosting上新建的那个项目,复制下来的那个地址。
    例如,源代码路径是 http://svn.w18.net/svn/test_-这个是我在SVN Hosting上建立的一个测试项目。
  4. 然后他会提示你输入帐户,密码,将你在SVN Hosting注册的帐号和密码填上就OK。

第三步,把你的程序源码放入源码库

  1. 你是不是发现checkout下来的目录空空如也,如果你打开这个目录,你会发现除了一个.svn的隐藏目录,空空如也。是的,这是正常的。.svn目录用来记录你所有的操作记录,以一种不可思议的纪录方式。

    图4:checkout finished后


    图5:目录列表-这些小图标正是版本管理的标志,表明了这些目录正在使用SVN进行管理。打勾表示当前目录没有作代码更新;打“!”表明你更改了源代码,需要commit了。

    图五:进到test目录里,发现空空如也,这是正常的,你没有放任何源码进去。
  2. 现在,把你的源码放进去这个目录里面吧。


第四步,Commit和Update

  1. 你现在应该要把你这个项目的代码提交到源代码库了。应该怎么样做呢?选择Commit。你可以在根目录下击右键,选取“SVN commit”,同样也可以到外面的目录,点右键选“test”目录。
  2. 这时,会出现这样的对话框,你选择“全部”,除非你有个别文件不希望提交到源码库里。
  3. 然后完成后,你会发现这个目录里的文件显示方式已经不一样了,是的,这些打了“勾”的文件已经进入到源码库并开始版本管理了。
  4. 好了,现在你在家里已经完成了代码的提交。然后,假设你回到公司,要获得源代码来继续跟进编写,怎么办呢?对了,第一次,先“checkout”下来,步骤同上,但因为这次你的源码库里已经有东西了,你checkout下来的目录不会是空的了,而是有你需要的源代码在里面了。
  5. 然后用编辑器修改程序,比如这里我只是用Dreamweaver小改了一下,也可以用VS.net, Eclipse等等,开发工具没有所谓。然后你会看到改过的文件会有一个“!”号,他提示你需要将最新的改动提交到源码库。

  6. 步骤同上。如果你需要一次commit多个文件,你直接选择根目录空白地方的右键来“Commit”;如果你只需要commit一个或指定文件,选择你那些需要commit的文件来commit。
  7. 然后,回到家后,点击“test”目录,选择一下“SVN update”,代码轻松同步了。
  8. 呵呵,是不是爽很多,再不用拿着愚蠢的移动硬盘或U盘跑来跑去,或者用小心翼翼,整天怕覆盖错的FTP来传来传去呢?

进阶部分:多人协同工作

  1. 多人协同工作首先你需要邀请你的朋友和其它开发程序员加入。比如,我这个“test”项目,需要邀请huajun来一起改代码(或者说,赋予huajun可以读和改我的代码的权限),我需要先到这个SVN hosting网站,进入“我的项目”,选择项目“test”,进入在最下面的“添加项目成员”处,填入“huajun”(注意,这个名字必须要与该用户的注册帐号完全一致)
  2. 提交后,huajun将会收到邮件,被告知他已经被我加入到这个项目的开发成员当中了。当然,你日后仍有这个删除他的权限的功能可使用。
  3. huajun的步骤也是和我一样,先去登录SVN Hosting,然后在“我加入的项目”当中找到这个项目,进入,找到这个项目的SVN地址,Checkout下来。改动过后,Commit;要去改之前,记得先Update,看看partner们有没有作最新的更新,以免改重复。
  4. 如果我想邀请的朋友还没有在SVN Hosting上注册帐号,怎么办呢?我们现在有Email邀请功能,可以直接发邮件到你要邀请的人的邮箱,他收到邮件后,只需点击一个链接,即可实现一键注册并加入项目功能。

进阶部分2:Linux的应用

  1. 本人自从用上SVN后,再也没有用过FTP去上传源代码来做WEB项目和做网站了。(那些外面免费下载的ECshop和Discuz!除外了,不过也用wget为主了)用FTP的麻烦大家都知道:麻烦-要记住改了哪些文件;危险-很容易就覆盖错误。搞多几次,就搞糊涂了不知道哪个才是最新版本的代码。而使用SVN,这些问题完全解决了不再是问题。
  2. 步骤大概是-在调试环境上改动代码-Commit-在服务器上Update,这时等于最新版本的程序已经上传到服务器上。(对于不需要编译和BS架构的Script)
  3. Linux下的SVN客户端大家可以google一下,不过我在ubuntu下是直接apt-get的安装相当简单。使用命令:svn checkout http://url就是将一个项目的源码取下来,用svn up就可以将最新的更新同步到服务器上了。
  4. 在Windows服务器上,更加简单,TortoiseSVN客户端同样可以在Windows Server上安装与运行。这里不赘述。

进阶部门3之import、export和show log、conflict

  1. import:你可以将一个未加入源代码库的项目代码,直接import到一个新项目中去。
  2. export:将帮助你导出一份没有.svn目录,不再带版本管理功能的源代码出来。
  3. log:日志功能非常重要。你可以在commit的时候,记下你这次改了什么,方便日后翻查以及回滚。
  4. 在SVN右键菜单里,还有很多选项。选择show log将可以看到整个更新纪录。
  5. 出现Conflict错误怎么办?最简单的办法,把你现在那个Conflict的文件删除掉,重新Update一遍。你当然也可以先看一下哪里冲突了,再作改动。
  6. 注意事项:不要直接将在SVN版本管理下的一些目录直接删除或重命名,这样很容易commit不上去并报错。最好的办法是,在SVN菜单里选“Delete”和“Rename”。
  7. 最后-要充分使用并领略SVN的好处,记得两点-在每次改动完之后,记得Commit;在每次去改动源代码之前,记得Update