svn (一) 环境搭建

svn 是用来做版本控制的,作用同git一样
  • svn 在windows 下面有图形界面客户端,名叫 tortoisesvn,只包含客户端

  • 在centos 下面没有图形界面客户端,存在命令行界面, subversion,包含客户端与服务器

  • 本系列只要讲述centos 下如何用 subversion 进行版本管理

  • 环境搭建(建立一个简单的svn学习环境)


1----------------------------------------软件安装及版本查看
[root@pc ~]# yum install subversion -y
[root@pc ~]# svnserve --version
svnserve,版本 1.6.11 (r934486)
2----------------------------------------仓库创建及仓库查看
[root@pc ~]# mkdir -p /opt/svn/repo
[root@pc ~]# svnadmin create /opt/svn/repo
[root@pc ~]# ll !$
ll /opt/svn/repo
总用量 24
drwxr-xr-x. 2 root root 4096 3月  15 22:27 conf
drwxr-sr-x. 6 root root 4096 3月  15 22:27 db
-r--r--r--. 1 root root    2 3月  15 22:27 format
drwxr-xr-x. 2 root root 4096 3月  15 22:27 hooks
drwxr-xr-x. 2 root root 4096 3月  15 22:27 locks
-rw-r--r--. 1 root root  229 3月  15 22:27 README.txt
3----------------------------------------修改仓库配置文件
sed -i "s/^# anon-access = read/anon-access = write/g" /opt/svn/repo/conf/svnserve.conf
4----------------------------------------启动svn服务(如果通过file协议拉取代码,可不选
													如果通过svn协议拉取代码,必须选),并查询服务状态
[root@pc conf]# svnserve -d -r /opt/svn/repo
[root@pc conf]# netstat -tunlp |grep svnserve
tcp        0      0 0.0.0.0:3690                0.0.0.0:*                   LISTEN      1439/svnserve  
5----------------------------------------新建空项目
mkdir /opt/svn/repo/svn_project1
svn import /opt/svn/repo/svn_project1 file:///opt/svn/repo/svn_project1 -m "初始化SVN目录"
rm /opt/svn/repo/svn_project1 -rf
6.1----------------------------------------通过file协议拉取项目
mkdir /root/learn_svn/file_protocol -p
cd /root/learn_svn/file_protocol
[root@pc file_protocol]# svn co file:///opt/svn/repo/svn_project1 
取出版本 1。
[root@pc file_protocol]# ls
svn_project1
6.2----------------------------------------通过svn协议拉取项目
mkdir /root/learn_svn/svn_protocol -p
cd /root/learn_svn/svn_protocol 
[root@pc svn_protocol]# svn co svn://127.0.0.1/svn_project1 
取出版本 1。
[root@pc svn_protocol]# ls
svn_project1

7 ----------------------------------------在 /root/learn_svn/svn_protocol/svn_project1 下 进行第一次提交
[root@pc svn_project1]# echo `date` > file ;cat file
2020年 03月 15日 星期日 22:48:48 CST
[root@pc svn_project1]# svn add file 
A         file
[root@pc svn_project1]# svn commit -m "update date"
增加           file
传输文件数据.
提交后的版本为 2。
[root@pc svn_project1]# svn update
版本 2。
8 ----------------------------------------在 /root/learn_svn/file_protocol/svn_project1 下 拉取第7步的提交
[root@pc svn_project1]# ls
[root@pc svn_project1]# svn update
A    file
更新到版本 2。
[root@pc svn_project1]# ls
file
[root@pc svn_project1]# cat file 
2020年 03月 15日 星期日 22:48:48 CST

其他

其他途径
	man svn
	info svn

  • subversion 包中的bin文件
[root@pc svn_project1]# rpm -ql subversion |grep -w "bin"
/usr/bin/svn
/usr/bin/svnadmin
/usr/bin/svndumpfilter
/usr/bin/svnlook
/usr/bin/svnserve
/usr/bin/svnsync
/usr/bin/svnversion
  • subversion 依赖关系
    svn (一) 环境搭建
上一篇:C++动态库的制作和调用


下一篇:初识C++与Visual Studio(4)——Visual Studio2017的解决方案文件夹介绍及项目生成步骤