Subversion (SVN)

Svn结合hook实现自动更新及多Project管理更新

回眸只為那壹抹淺笑 提交于 2019-11-27 08:39:43
一、hook简单介绍 为了方便管理员控制提交的过程 ,Subversion提供了hook机制。当特定的事件发生时,相应的 hook会被调用,hook其实就相当于特定事件的处理函数。每个hook会得到与它所处理的事件相关的参数,根据hook的返回值,Subversion会决定是否继续当前的提交过程 要实际安装一个可用的钩子,你需要在 repos/hooks目录下安装一些与钩子同名(如 start-commit或者post-commit)的可执行程序或脚本。 二、本地机器SVN自动更新 1.export方式(备份) 在使用svn客户端时,有可能需要对某一个版本进行本地备份,比如制作成压缩包进行发布,这时候需要从svn文件夹中提取出内容,去除.svn等隐藏的svn配置文件。最笨的方法拷贝一份出来,然后显示隐藏文件,把所有.svn文件夹都删掉。在svn菜单中,可以找到export命令,这个命令可以将当前svn目录中的内容干净地导出到指定的目录 例如你版本库的svn访问地址是http://192.168.15.132:36002/svn/project1,你想把这个版本库下的/trunk/web文件夹发布到tomcat上,发布到tomcat的文件夹地址是/data/tomcat/web,svn的管理员用户名是test,密码是test2016,对应的命令: svn export http:/

eclipse本地svn插件与库版本不一致更新等操作出错解决方法

旧时模样 提交于 2019-11-27 08:38:24
更新svn项目提示: org.apache.subversion.javahl.ClientException: The working copy needs to be upgraded svn: The working copy at 'D:\Administrator\Workspaces\MyEclipse 2017 CI\huamu-goodemall' is too old (format 29) to work with client version '1.9.3 (r1718519)' (expects format 31). You need to upgrade the working copy first. org.apache.subversion.javahl.ClientException: The working copy needs to be upgraded svn: The working copy at 'D:\Administrator\Workspaces\MyEclipse 2017 CI\huamu-goodemall' is too old (format 29) to work with client version '1.9.3 (r1718519)' (expects format 31). You need to

SVN详细配置与使用 ——一步步教会您使用

北城以北 提交于 2019-11-27 08:14:29
项目管理在项目开发活动中起到非常重要的作用,而对于初学者来说学习有一定的难度,且不说如何使用,就是搭建过程恐怕也要费一般周折,介于此下面就通过图解的方式一步一步详细的教大家如何使用SVN,你只要耐心的一步步去实践就能掌握 目录: 一、 SVN介绍 二、 SVN服务器安装 三、 SVN客户端安装 四、 SVN服务配置 五、 SVN客户使用 六、 Eclipse SVN客户端插件安装 一、SVN介绍   SVN是个自由、开源的版本控制系统,绝大多数开源软件都使用SVN作为代码版本管理软件。   SVN的官方网站 http://subversion.apache.org/ 。目前SVN在开源社区中非常流行的一款版本控制软件,它是CVS的替代产物。 二、SVN服务器安装   1、下载CollabNetSubversion-server-1.5.6-2.win32   2、执行安装程序CollabNetSubversion-server-1.5.6-2.win32 ---------SVN服务器软件   安装完成后,右键菜单出现”SNV Checkout”(可将服务器中的项目签出到本地),如图所示 三、SVN客户端安装   1、 下载TortoiseSVN-1.5.9.15518-win32-svn-1.5.6.msi   2、 执行TortoiseSVN-1.5.9.15518-win32

Linux+Jenkins自动构建

末鹿安然 提交于 2019-11-26 21:22:44
Linux Job 在Jenkins中创建工程 构建前准备 自动部署脚本 需要把自动部署脚本上传到部署主机的响应目录,请仔细查看Jenkins 各个Job的配置。 portal部署脚本 存放在部署主机的目录:/data/deploy-shell 脚本名称:deploy-portal.sh iot-web部署脚本 存放在部署主机的目录:/data/deploy-shell 脚本名称:deploy-octopus.sh portal前端部署脚本 存放在部署主机的目录:/data/deploy-shell 脚本名称:deploy-web.sh 配置文件准备 portal 和iot-web自动构建支持使用部署主机的配置文件替换构建的配置文件,需要提前把文件文件准备好,存放到相应的目录,特殊情况需要修改部署脚本。 建议把配置文件分部署节点分别在svn 上配置好,然后直接拉取下来就可以了。 如portal 配置文件目录:与部署脚本有关 构建有一个参数控制是否使用部署主机配置文件替换构建的包的配置文件(iot 和portal的构建都配置有): 执行构建 前期准备工作做好后就可以自动构建了,一键发布(要发布多节点只要修改构建配置的分发主机项即可,可以支持多个节点同时部署)。 iot-web 直接执行linux-iot-test 自动构建 portal 需要先执行linux-iot-portal0

svn 常用操作命令及问题处理

為{幸葍}努か 提交于 2019-11-26 20:39:25
[TOC] 1. 常用命令 1.1. 基本使用 检出 checkout # 检出代码 ➜ svn co repo_url # 检出代码,并指定目录名 ➜ svn co repo_url saved_dir_name 加入版本控制 add # 添加指定文件 ➜ svn add /path/to/file # 添加所有 .sh 后缀的文件 ➜ svn add *.sh # 递归添加当前目录下的所有新文件 # 如果使用参数 --no-ignore 则新增时会包含被设置为忽略的文件 ➜ svn add . --force 提交 commit ➜ svn ci -m '提交更改' 更新 update ➜ svn up [file|path] # 更新到指定版本 11 ➜ svn up -r 11 [file|path] 清除锁定 svn cleanup 重定向仓库地址到新地址 ➜ svn switch --relocate old_repo_url new_repo_url 切换当前项目到指定分支 ➜ svn switch svn://branch_url 检查工作副本下的文件状态 svn st 查看工作副本的版本库概览信息 svn info 查看版本库上某个目录下的文件列表(不需要本地检出) ➜ svn list svn://192.168.1.15/blog 1.2. 分支和标签 创建

使用SVN钩子强制提交日志和限制提交文件类型

血红的双手。 提交于 2019-11-26 20:39:00
Subversion本身有很好的扩展性,用户可以通过钩子实现一些自定义的功能。所谓钩子实际上是一种事件机制,当系统执行到某个特殊事件时,会触发我们预定义的动作,这样的特殊事件在Subversion里有很多。那么SVN的钩子有哪些呢?下面简单介绍下: 服务器钩子: 锁定的2种 pre-lock 钩子在每次有人尝试锁定文件时执行。可以防止完全锁定,或者用来创建控制哪些用户可以锁定哪些路径的复杂策略。如果钩子发现已存在锁,也可以决定是否允许用户“窃取”这个锁。 post-lock 在路径锁定后执行。通常用来发送锁定事件邮件通知。 解锁的2种 pre-unlock 钩子在某人企图删除一个文件上的钩子时发生。可以用来创建哪些用户可以解锁哪些文件的策略。制定解锁策略非常重要。如果用户 A 锁定了一个文件,允许用户B 打开这个锁?如果这个锁已经一周了呢?这种事情可以通过钩子决定并强制执行。 post-unlock 在一个或多个路径已经被解锁后执行。通常用来发送解锁事件通知邮件。 提交的3种 start-commit 它在提交事务产生前已运行,通常用来判定一个用户是否有权提交。版本库传给该程序两个参数:到版本库的路径,和要进行提交的用户名。如果程序返回一个非零值,会在事务产生前停止该提交操作。如果钩子程序要在stderr中写入数据,它将排队送至客户端。 pre-commit 在事务完成提交之前运行

SVN导出eclipse项目到Idea

こ雲淡風輕ζ 提交于 2019-11-26 14:17:01
SVN导出eclipse项目到Idea 废话环节:目前IDEA编译器越来越流行,很多都在用idea 那么如何将eclipse项目从svn导出到Idea 一、首先下载SVN SVN自行百度 有个点需要注意下 安装SVN时候需要注意安装有svn.exe的 idea配置需要用到 默认安装直接下一步是没有的 当年就被坑过 二、idea配置SVN 可能idea版本不一致 图片可能与你的idea不符合 但是可以直接在搜索框 搜索Subversion 如图片红色框 选择你下载好的svn 三、配置SVN地址 点击红色框 在点击绿色加号 添加你自己的SVN地址 四、开始导出项目c 选择项目点击checkout 选择导出的目录也就是项目名称 自己可以新建一个文件夹 选择你自己新建的文件夹 一直点击OK即可 已经导出完成 点击打开 选择默认就行 项目已经导入完成 然后配置下就OK了 来源: oschina 链接: https://my.oschina.net/u/4034278/blog/3079125

IDEA 使用SVN 图文详解

狂风中的少年 提交于 2019-11-25 22:00:00
Snv2idea 工厂提交和检出 1、Idea集成svn 、查看svn仓库 调出svn视图: 连接svn服务器: 连接后效果如下: 3、忽略上传文件 由于不同的用户使用的环境不同,因此有些文件不用上传到svn服务器,比如有的用户使用的是idea,而用的用户使用的是eclipse,由于使用的工具不同,因此上传的时候需要忽略其环境文件,只要上传pom.xml和src目录下的文件即可,那么无论使用的是哪个工具都可以通过这两个文件生成工程并进行操作。 添加忽略文件: 忽略文件如下:可以选择按规则匹配 (1).idea (2)target (3)*.iml 4、上传工程到svn 右键工程,将工程上传到svn: 选择上传到trunk目录中: 再次右键工程,提交到svn目录: 选择提交; 5、检出svn 选择要检出到哪个目录: 设置检出的工程名称: Next: 点击OK: 点击Yes: Next: Next: Next: Next: 点击Finish,检出到一个新窗口: 6、提交更新代码 此时我们有两个idea窗口(一个是最初上传hello工程的窗口,一个是从svn检出hello工程后的新窗口),用来模拟两个用户在操作同一个工程。为了称呼方便,我们将第一个窗口称之为A用户,第二个窗口称之为B用户. A用户修改代码如下: 然后提交数据,更新到svn: 选择commit: