Subversion是一个自由,开源的版本控制系统。在Subversion管理下,文件和目录可以超越时空。Subversion将文件存放在中心版本Subversion是一个自由,开源的版本控制系统。在Subversion管理下,文件和目录可以超越时空。Subversion将文件存放在中心版本库里。这个版本库很像一个普通的文件服务器,不同的是,它可以记录每一次文件和目录的修改情况。这样就可以籍此将数据恢复到以前的版本,并可以查看数据的更改细节。正因为如此,许多人将版本控制系统当作一种神奇的“时间机器”。引用自百度百科 http://baike.baidu.com/view/429581.htm


在Windows上安装、配置、使用:

官网:http://subversion.apache.org/packages.html

下载:http://www.visualsvn.com/files/VisualSVN-Server-2.6.0.msi

安装比较简单,略。打开 VisualSVN Server

1、创建一个代码仓库

右键 Repositories 点击 Create New Repository,输入Repository Name,我要创建项目1,所以我这里输入project1,下一步,选择代码库结构,我选Empty Repository,因为我不需要分支等其它结构。下一步,选择代码库用户权限,这里先选ALL,因为还没有创建用户。点击创建,这时列出了新创建的代码库的统计信息,可以看到代码库名字、访问地址 https://goodluck-PC/svn/project1和权限信息。点击finish完成创建。

2、创建用户

右键Users,点击Create User,输入用户名和密码,输入用户名zhangsan,密码zhangsan,点击ok

3、设置代码库访问权限

右键我们刚才创建的project1,点击Properties,将Everyone用户删除,点击Add,选择刚才创建的用户zhangsan,点击ok,在Permissions里选择Read/Write,点击确定

4、导入项目代码

需要subversion客户端,安装客户端

官网:http://tortoisesvn.net/downloads.html

下载地址:

http://sourceforge.net/projects/tortoisesvn/files/1.8.0/application/TortoiseSVN-1.8.0.24401-win32-svn-1.8.0.msi/download?accel_key=61%3A1372517561%3Ahttp%253A//tortoisesvn.net/downloads.html%3A930d5c59%246a3d744e30f6f73980f98642e4b63614e98bb9a4&click_id=8c69989a-e0cb-11e2-8e40-0200ac1d1d95&source=accel

安装简单,略

找到项目代码所在目录,点击右键,选择TortoiseSVN,Import,输入前面代码库访问地址:

https://goodluck-PC/svn/project1

点击ok,弹出Certificate validation failed窗口,点击Accept the certificate permanently,输入用户名和密码,即前面我们创建的zhangsan,勾选save authentication,点击ok,开始导入项目代码,完成后点ok,导入完成。

5、在VisualSVN Server里浏览项目代码

点击刚才创建的project1,在右侧窗口点右键,点刷新,即可看到刚才导入的项目代码文件

6、在其他机器checkout出项目代码

也需要安装TortoiseSVN哦。在任意目录里空白处点右键,选SVN Checkout,在URL of repository里填入代码库访问地址,在Checkout directory里输入想导出到的目录,目录可以不存在,然后点ok,开始导出,完毕后点ok。然后到目录里查看导出的项目代码文件。


在 Linux上安装、配置、使用:

[root@localhost ~]# yum install subversion

1、创建一个代码仓库

[root@localhost data]# svnadmin create /data/svn

2、创建用户

先修改svn服务器端配置文件

[root@localhost ~]# cd /data/svn/conf
[root@localhost conf]# vim svnserve.conf
[root@localhost conf]# grep -v '^#\|^$' svnserve.conf
[general]
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
realm = My First Repository
[sasl]

注意事项:

a、确保anon-access设置成none,为了防止在客户端show log时不显示作者和日期,而且提示“要离线”,这是subversion的一个bug,如下图:

175953641.png

184419972.png

b、确保所有行顶格写


再修改用户配置文件,本例只添加了用户zhangsan

[root@localhost conf]# grep -v '^#\|^$' passwd
[users]
zhangsan = zhangsan123


再修改代码库访问授权配置文件

[root@localhost conf]# grep -v '^#\|^$' authz
[aliases]
[groups]
[/]
zhangsan = rw

3、启动服务

svnserve -d -r /data/svn

4、导入项目代码

安装客户端同windows

导入项目代码也同windows,只是此时的URL不同了,如下:

svn://192.168.20.3/

5、浏览项目代码

a、在服务器端浏览

[root@localhost svn]# svn list --username zhangsan --password zhangsan123 svn://192.168.20.3/

b、在客户端浏览

在任意文件夹或空白处点右键,选TortoiseSVN点Repo-browser,输入URL:如:svn://192.168.20.3/,点ok,即可浏览到代码库文件

6、在其他机器checkout出项目代码

方法同上面的windows,只是URL格式不同而已