基于svn+ssh:访问svn的部署以及客户端配置
1、安装ssh
sudo apt-get install ssh
2、安装subversion
sudo apt-get install subversion
3、为参与项目开发的成员建立用户帐户
sudo adduser wangchengliang
4、建立名为svn的用户组
sudo addgroup svn
sudo addgroup wangchengliang svn
注:这里可以根据不同的权限建立多个用户组,把有相应权限的用户放入相应的组中
5、建立项目文件存储目录
sudo mkdir/home/svn
sudo mkdir/home/svn/trunk
6、创建SVN文件仓库
sudo svnadmin create/home/svn/trunk
7、为组成员赋予相应的权限
sudo chown -R root:svn/home/svn/trunk
sudo chmod -R g+rws /home/svn/trunk
sudo chmod -R o-rwx /home/svn/trunk
注:有关权限修改的问题可以查看相关linux命令
8、为每个成员生成密钥对(以用户wangchengliang为例)
切换为wangchengliang用户登录:su wangchengliang (提示输入wangchengliang的密码)
执行:ssh-keygen -b 1024 -t dsa -f wangchengliangkey
注:wangchengliangkey为文件名;这里使用的是DSA加密,可以改用RSA加密,把其中的“dsa”改为“rsa”就可以了。
这时产生两个文件:wangchengliangkey和wangchengliangkey.pub,前一个为秘密密钥后一个为公开密钥
然后,创建目录/home/wangchengliang/.ssh,把公钥拷贝到/home/wangchengliang/.ssh目录下:cp wangchengliangkey.pub /home/wangchengliang/.ssh/authorized_keys
注:文件名必须为authorized_keys
退出:exit
9、svnserve -d -r /home/svn 命令来启动这个仓库
10、在windows下安装svn客户端,则需安装“TortoiseSVN”、“Puttygen”和“Pageant”
1、下载安装“TortoiseSVN”
2、转换私钥格式:
2.1、将wangchengliangkey拷贝到windows下,运行Puttygen;
2.2、选择菜单conversions->Import Key,
2.3、选择文件wangchengliangkey,提示“Enter passphrase for key",输入创建公私钥对示使用的passphrase关键字,
2.4、然后选择Parameters为“SSH-2 DSA”(如果公私钥是使用RSA生成,则选择“SSH-2 RSA”),
2.5、点击按钮Save private key,
2.6、保存文件名为wangchengliangkey.ppk。
3、建立TortoiseSVN与Pageant的关联,并将私钥加入Pageant:
3.1、鼠标右键选择TortoiseSVN->Settings->Network->SSH client,输入:D:\Program Files\putty\PLINK.EXE;
3.2、鼠标右键选择TortoiseSVN->RepoBrowser 输入URL:svn+ssh://wangchengliang@192.168.217.214/home/svn/trunk;
3.3、运行Pageant,右键点击屏幕右下角的图标-〉Add Key,将私钥文件wangchengliangkey.ppk加入。
基于svn+ssh:访问svn的部署以及客户端配置的更多相关文章
- Linux 部署 iSCSI 客户端配置(Windows)
Linux 部署 iSCSI 客户端配置(Windows) 客户端环境 Client :Windows 7 ip :192.168.121.138 一.首先查看客户端本地所有的磁盘 查看路径:邮件计算 ...
- Linux 部署 iSCSI 客户端配置(Linux)
Linux 部署 iSCSI 客户端配置(Linux) 客户端环境 Client :RHEL8 IP : 192.168.121.11 一.测试与服务端的连通性 [root@Client-linux ...
- svn+ssh方式svn服务器和客户端的配置[转载]
本文摘自:http://hi.baidu.com/farmerluo/item/e7d9d72d098afc0a42634abb 我们最近一个项目用的那几台服务器都是客户给的,但是管理非常严格,只给我 ...
- PinPoint单节点部署及客户端配置方法
在一次做项目中,需要涉及全链路压测,为了更好定位链路中某一节点可能会出现的问题,在繁忙之余,快速部署及应用了该链路工具,分享给大家~ 话不多说,开始部署~ 一.环境配置1.1 获取需要的依赖包进入ho ...
- 部署http访问SVN模式出现403问题
部署http访问SVN模式到阿里云服务器 参考连接地址 https://help.aliyun.com/document_detail/52864.html 设置好账号进行访问 http://ip/s ...
- 【K8S】基于Docker+K8S+GitLab/SVN+Jenkins+Harbor搭建持续集成交付环境(环境搭建篇)
写在前面 最近在 K8S 1.18.2 版本的集群上搭建DevOps环境,期间遇到了各种坑.目前,搭建环境的过程中出现的各种坑均已被填平,特此记录,并分享给大家! 服务器规划 IP 主机名 节点 操作 ...
- 三万字无坑搭建基于Docker+K8S+GitLab/SVN+Jenkins+Harbor持续集成交付环境
写在前面 最近在 K8S 1.18.2 版本的集群上搭建DevOps环境,期间遇到了各种坑.目前,搭建环境的过程中出现的各种坑均已被填平,特此记录,并分享给大家! 文章和搭建环境所需要的yml文件已收 ...
- 【Copy攻城狮日志】docker搭建jenkins拉取svn代码打包vue项目部署到nginx
↑开局一张图,故事全靠编↑ 前言 打开搜索引擎输入『Copy攻城狮』,发现最新的一条记录已经是去年的4月,意味着我又有一年时间没有再总结成长了.习惯了“温水煮青蛙”的日子,无论是经验水平还是薪资收入, ...
- Linux下SVN+多个Tomcat自动部署
项目中都是jsp开发,所以用到Tomcat. 在我文章中也写过多个Tomcat 的部署,具体可以参考:http://www.cnblogs.com/magmell/p/7045193.html SVN ...
随机推荐
- ngget配置
Install-Package NuGet.CommandLine nuget spec nuget pack Jryg.VirtualNumber.ClientNet4.csproj -Includ ...
- JS性能之滚动条之外的其他部分
问题: 如果一个页面宽高比较大,也就是页面需要滚动条来查看其他页面内容,这时候,在滚动条之外的其他部分,是依然处于运行状态. 比如那部分有视频播放,则那些视频虽然在当前窗口看不到,但它们还是会处于播放 ...
- TextBlock截断字符显示为....
添加: TextTrimming="CharacterEllipsis" 到TextBlock中, 即可让TextBlock 支持截断字符显示为...
- glusterfs安装配置简单使用
GlusterFS是一种分布式分布式文件系统,默认采用无中心完全对等架构,搭建维护使用十分简单,是很受欢迎的分布式文件系统. 官网https://www.gluster.org/,官网上表示Glust ...
- bean validator - Hibernate validator
在后台开发过程中,对参数的校验成为开发环境不可缺少的一个环节.比如参数不能为null,email那么必须符合email的格式,如果手动进行if判断或者写正则表达式判断无意开发效率太慢,在时间.成本.质 ...
- mount总结
挂载分区 mount基本语法 mount [参数] /dev/sdb1(需要挂载的分区) /sdb1(挂载目录) 参数是可选的,也可以不带参数,参数的使用方法(-o ro,sync,atime). 参 ...
- springMVC绑定json参数之一
一.SpringMVC @RequestBody接收Json对象字符串 以前,一直以为在SpringMVC环境中,@RequestBody接收的是一个Json对象,一直在调试代码都没有成功,后来发现, ...
- JQuery鼠标移动上去显示预览图
body中: <img src="../images/icon_view.gif" bigimg="../img.jpg" title="查看预 ...
- MySQL绿色版的安装步骤
由于工作需要最近要开始研究MySQL了(看来学习都是逼出来的),本人对mysql没有研究,可以说一个小白. 下面就从安装开始吧,虽然网上关于这方面的东西很多,还是需要自己把操作过程写下来. 1.数据库 ...
- WEB 项目中的全局异常处理
在web 项目中,遇到异常一般有两种处理方式:try.....catch....:throw 通常情况下我们用try.....catch.... 对异常进行捕捉处理,可是在实际项目中随时的进行异常捕捉 ...