2 Star 19 Fork 23

goodhal / svnadmin-boot2

forked from liuhaiyuan / svnadmin-boot2 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
README.md 3.14 KB
一键复制 编辑 原始数据 按行查看 历史

SvnAdmin-boot2 plus

SVN管理工具

主要功能 (参见用户手册)

  • 支持模板库权限复制
  • 支持项目级子管理员
  • 支持LDAP库的管理
  • 支持用户现有SVN项目导入,一键迁移;
  • SVN仓库管理;
  • SVN用户,用户组管理;
  • SVN资源权限授权;
  • 用户权限查看,密码更改;
  • SVN仓库支持多库模式;

软件架构

  • 框架技术: SpringBoot_2.1.6.RELEASE + svnkit + Druid(数据库连接池)
  • 项目构建: Maven、Jdk8

一、使用源码开发部署步骤:

  1. 下载项目源码;
  2. 找到文件 test\resources\svnadmin_init.sql 进行执行初始化;
  3. 默认root账户:root/root
  4. 删除所有账户,进行登录,则可以重新初始化管理员账号;
  5. SVN认证账户和登录账户默认一致;

二、部署步骤:

  1. 找到文件 src\test\resources\sql\svnadmin_init.sql 进行执行初始化;
  2. 配置数据库连接信息,配置文件位置:resources/application-dev.yml
  3. 打jar包后运行run.sh(需修改配置)sh run.sh start;环境推荐JDK1.8
  4. 默认root账户:root/root
  5. 删除所有账户,进行登录,则可以重新初始化管理员账号;
  6. SVN认证账户和登录账户默认一致;

三、使用多库启动模式:

假设你的SVN地址为D:\svn\demo, 那么你需要使用多库的启动方式

svnserve -d -r D:\svn

你的访问路径将是这样的: svn://localhost/demo

四、使用单库启动:

修改PjAuthService 的 formatRes方法增加

//替换项目根目录20190701 单库不带别名访问
res = StringUtils.replaceEach(res, new String[]{relateRoot+":"}, new String[]{""});

五、默认为H2数据库,支持MySQL8.X支持:

  • mysql 5.X 修改POM文件
<jdbc.mysql.version>5.1.14</jdbc.mysql.version>
//驱动
driver-class-name: com.mysql.jdbc.Driver
  • mysql 8.X 修改POM文件和数据库URL
<jdbc.mysql.version>8.0.16</jdbc.mysql.version> 
 //MySQL.jdbc.url 增加 serverTimezone=UTC
MySQL.jdbc.url=jdbc:mysql://localhost:3310/svnadmin?characterEncoding=utf-8&serverTimezone=UTC
//驱动
driver-class-name: com.mysql.cj.jdbc.Driver

六、项目总结备忘:

  • 使用配置库审计功能 向svn提交成果物时,log信息为如下格式才能被统计到(包含Model和SourceCode字样的代码路径会被忽略)
[version]:x.x
[status]:XXXX
[description]: XXXXx
  • linux外围环境一键安装
yum install subversion httpd mod_dav_svn -y
  • jsp支持

使用1.4.2.RELEASE版本

<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<!-- 必须是1.4.2版本,否则jsp访问不到 -->
<version>1.4.2.RELEASE</version>

jsp文件需要放置到META-INF/resources下才能访问

<resource>
   <directory>src/main/webapp</directory>
   <!--注意必须要放在此目录下才能被访问到 -->
	<targetPath>META-INF/resources</targetPath>
	<includes>
		<include>**/**</include>
	</includes>
</resource>

捐赠

如果觉得还不错,请作者喝杯咖啡吧 ☺

输入图片说明

Java
1
https://gitee.com/goodhal/svnadmin-boot2.git
git@gitee.com:goodhal/svnadmin-boot2.git
goodhal
svnadmin-boot2
svnadmin-boot2
master

搜索帮助