在很多公司都还是使用SVN管理代码,那么如何给svn集成gitlab的CI/CD呢?
- 其中一个简单的办法就是在gitlab中配置hook钩子,但一般公司都使用VPN这个就比较麻烦了
- 所以推荐另一种办法,就是在开发本地集成gitlab
-
在gitlab上创建工程,并将svn管理的代码提交到git上
注意:要在.gitignore中添加 .svn,也就是git提交时,不要提交.svn代码
通过TortoiseSVN 将.git 添加到忽视列表中,也就是在svn提交代码时,不要提交.git
这时就可以在svn工程跟目录初始化git环境了
$ git init $ git remote add origin https://code.svn/worker/trunk
- 编写一个 git-commit.bat 的脚本
@echo off
d:
cd D:\svncode\work
git add *
git commit -m "commit to git...." *
git push -f origin master
echo "已经成功从svn推送代码到git上"
pause
- 添加忽视文件 .gitignore
.svn
.idea
doc
moudule-xxx
**/target/*
git-commit.bat
.iml
- 为TortoiseSVN工具配置 hook 脚本
注意:只有在svn工程目录下提交代码回调脚本才能生效
![](https://img.haomeiwen.com/i20854253/e831907ca81f0262.png)
- IDEA配置
如果使用 IDEA 开发工具,需要额外设置两个地方:
(1) 我们SVN是我们当前的代码管理工具,所以需要把 Git管理删除
![](https://img.haomeiwen.com/i20854253/5add964a5b06a339.png)
(2) 在idea中提交代码时,TortoiseSVN和IDEA提交代码是两个机制,所以使用IDEA提交代码时,还需要额外再创建一个工具,配置内容和TortoiseSVN中的配置一样。
![](https://img.haomeiwen.com/i20854253/8a8e8a5a36b17755.png)
网友评论