一、安装svn

(1)安装svn服务器:

yum install subversion

(2)查看版本(随自己意愿):

svnserve --version

二、创建svn仓库并配置

(1)创建svn仓库

  在/home下创建svn目录并用svn管理员创建库:

[root@localhost /]# cd /home
[root@localhost home]# mkdir svn
[root@localhost home]# svnadmin create /home/svn

  查看svn仓库文件(一般是这几个文件):

[root@localhost home]# ls svn
conf db format hooks locks README.txt

  subversion目录说明

  conf目录:是这个仓库的配置文件(仓库的用户访问账号、权限等)。

  db目录:就是所有版本控制的数据存放文件。

  format文件:是一个文本文件,里面只放了一个整数,表示当前文件库配置的版本号。

  hooks目录:放置hook脚本文件的目录。

  locks目录:用来放置subversion见艰苦锁定数据的目录,用来追踪存取文件库的客户端。

(2)进入 conf 文件夹

[root@localhost home]# cd svn/conf
[root@localhost conf]# ls
authz passwd svnserve.conf

  authz文件是权限控制文件

  passwd是帐号密码文件

  svnserve.conf SVN服务配置文件

(2-1)设置账号密码 passwd

[root@localhost conf]# vi passwd 
[users]
root1=root1
root2=root2

  具体页面如下:

(2-2)设置权限 authz

[root@localhost conf]# vi authz
[/]
root1=rw
root2=rw
*=

  说明:

     r  为可读

    w 为可写

    rw为可读可写

*= 代表其他用户无任何权限

(2-2--)设置用户分组(相当于角色,这里可以不设置)

[root@localhost conf]# vi authz
[groups]
group1 = root1
group2 = root2
[/]
@group1 = rw
@group2 = r
* =

(2-3) 修改配置文件 svnserve.conf

[root@localhost conf]# vi svnserve.conf
打开下面的5个注释
anon-access = read #匿名用户可读
auth-access = write #授权用户可写
password-db = passwd #使用哪个文件作为账号文件
authz-db = authz #使用哪个文件作为权限文件
realm = /home/svn # 认证空间名,版本库所在目录

  具体页面如下(删除原有的#,并且前面不要有空格):

  说明:anon-access = none 是为了在eclipse中可以通过svn查看资源历史记录

三、启动SVN

[root@localhost conf]# svnserve -d -r /home/svn

  查看SVN启动情况:ps -ef |grep svn

  

  停止SVN: kill -9 端口号

  

四、客户端测试:

TortoiseSVN,输入地址svn://IP :

弹出输入用户名和密码界面,把原来配置的root1或者root2填入:

然后OK就可以了。

测试可能出现的问题

  svn: E000113: Unable to connect to a repository at URL 'svn://IP/repos'无法连接主机“IP”: 由于连接方在一段时间后没有正确答复

  原因:CentOS 7 默认不对外开放3690端口

  解决方案:

  centos7 设置防火墙:

  1.开放3690端口:

  firewall-cmd –permanent –zone=public –add-port=3690/tcp

  2.重启防火墙:

  firewall-cmd –reload

  或者直接在腾讯云安全组中添加规则:开放3690端口

  首次上传项目:

  1.在你想放这个svn项目的目录下右击后,点击SVN Checkout,将你在服务器上面创建的目录checkout下来,如果第一次登录需要填写用户名密码登录

  2.然后将你在本地项目下的文件或目录复制到此目录中,然后选中要提交的文件或目录,右击,选择“Add”,会在文件或目录上面显示了“+”号

  3.然后右击,选择  “SVN  Commit”,到此完成。

  4.将需要上传svn的文件夹依次添加add再commit就可以了

参考文章: https://www.linuxidc.com/Linux/2017-12/149777.htm

参考文章: https://www.cnblogs.com/liuxianan/p/linux_install_svn_server.html

参考文章: https://blog.csdn.net/lianzhang861/article/details/84937246

参考文章: https://blog.csdn.net/pk490525/article/details/9091415

——与君歌一曲

linux服务器安装svn并上传项目的更多相关文章

  1. svn进行上传项目

    当svn的服务器搭建成功后,就可以进行上传项目了. 右键,选择客户端的repo-browser, 输入地址 然后就可以浏览所有项目: 然后在版本仓库上,右键,add folder, 添加对应的文件夹即 ...

  2. linux下使用SVN上传项目

    linux下使用SVN上传项目 摘自:https://blog.csdn.net/puppet_/article/details/78259591 2017年10月17日 13:51:33 puppe ...

  3. SVN上传项目步骤

    1.svn上传项目  首先选中父工程 ,右键选中Team的share project 2.share完再选中SVN 3.选中项目  一个一个share project 4.

  4. Eclipse添加SVN插件:导入项目+上传项目+更新项目

    首先在Eclipse中安装SVN插件,方法同安装Pydev相同 首先点击help,然后点击Install New Software 然后在弹出的窗口中点击Add,再在新弹出的窗口中的url栏输入如下内 ...

  5. linux下将文件上传到svn服务器

    linux下将文件上传到svn服务器 摘自:https://blog.csdn.net/sky_yangge/article/details/41544773 2014年11月27日 16:47:57 ...

  6. svn用Cornerstone上传项目丢失静态库.a问题的解决

    最近电脑重装系统后,装上Cornerstone上传项目后,发现又有丢失.a文件的问题,这里说一下解决办法,打开Preferences-->Subversion-->General,将Use ...

  7. IDEA使用SVN上传项目

    文章最后附上svn服务器和客户端下载地址 一.IDEA集成SVN 二.查看SVN仓库 调出svn视图: 连接svn服务器: 连接后效果如下: 忽略上传文件 忽略文件如下:可以选择按规则匹配 .idea ...

  8. GitHub教程--上传项目四步法 GitBash命令行下使用方法

    之前就用过GitHub,感觉用GitHub托管自己的代码非常不错.可是之前用的都是窗口化的TortoiseGit,省了很多命令行的操作,但是个人非常喜欢使用命令行,于是,今天就试着用了用GitBash ...

  9. Linux下SVN创建新的项目

    Linux下SVN创建新的项目   Linux环境下的SVN创建新的项目 一.前置条件: 1)有安装了linux系统的服务器,123.*.*.29 2)服务器上安装了svn,本人服务器的svn的数据安 ...

随机推荐

  1. Docker 常用命令,自用,持续更

    1.进入容器 docker exec -it 容器id /bin/bash docker exec -it db30f533ee1b /bin/bash 2.复制文件到容器 docker cp 文件路 ...

  2. <ImageFieldFile:XXXX> is not JSON serializable

    问题描述: 使用django.forms.model下的model_to_dict来序列化ImageFieldFile出现不能序列化错误 使用json.dumps会出现同样的情况 解决办法: 方法一: ...

  3. mysql8数据库连接kettle

    1.将kettle连接mysql的包放入lib文件目录 2.修改data-integration\simple-jndi路径下的jdbc.properties配置文件,加上如下内容(kettle为数据 ...

  4. 第06组 Alpha冲刺(3/6)

    队名:拾光组 组长博客链接 作业博客链接 团队项目情况 燃尽图(组内共享) 组长:宋奕 过去两天完成了哪些任务 主要完成了用户论坛模块的接口设计 完善后端的信息处理 GitHub签入记录 接下来的计划 ...

  5. PHP用strtotime()函数比较两个时间的大小实例详解

    在PHP开发中,我们经常会对两个时间的大小进行判断,但是,在PHP中,两个时间是不可以直接进行比较,因为时间是由年.月.日.时.分.秒组成的,所以,如果需要将两个时间进行比较的话,我们首先要做的就是将 ...

  6. (转载)RNA表观遗传学开创者何川

    何川,RNA表观遗传学开创者.早年毕业于中国科技大学,2000年获麻省理工学院博士学位,2000到2002年在哈佛大学做博士后研究,2002年至今执教芝加哥大学化学系, 是芝加哥大学生物物理动态研究所 ...

  7. leetcode 380. Insert Delete GetRandom O(1) 、381. Insert Delete GetRandom O(1) - Duplicates allowed

    380. Insert Delete GetRandom O(1) 实现插入.删除.获得随机数功能,且时间复杂度都在O(1).实际上在插入.删除两个功能中都包含了查找功能,当然查找也必须是O(1). ...

  8. 基本使用——OkHttp3详细使用教程

    基本使用——OkHttp3详细使用教程 转 https://blog.csdn.net/xx326664162/article/details/77714126 概述 OkHttp现在应该算是最火的H ...

  9. Sword cjson库函数使用

    /* cjson库的使用 */ #include <stdio.h> #include <stdlib.h> #include <string.h> #includ ...

  10. EasyRTMP结合海康HCNetSDK获取海康摄像机H.264实时流并转化成为RTMP直播推流(附源码)

    最近一家深耕于南方电网的科技公司同事找到我们,咨询关于调用海康HCNetSDK取流,并进行互联网转化的方案,经过反复的沟通以及自身在EasyDSS和EasyNVR方面的经验,我们推荐了海康HCNetS ...