前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SVN配置及简单操作(HM程序员课程最全笔记)

SVN配置及简单操作(HM程序员课程最全笔记)

作者头像
葆宁
发布2019-04-18 15:01:37
1K0
发布2019-04-18 15:01:37
举报
文章被收录于专栏:FREE SOLO

视频原址:黑马程序员SVN视频教程

什么是SVN?

SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。也就是说 Subversion 管理着随时间改变的数据。 这些数据放置在一个中央资料档案库(repository) 中。 这个档案库很像一个普通的文件服务器, 不过它会记住每一次文件的变动。 这样你就可以把档案恢复到旧的版本, 或是浏览文件的变动历史。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。

代码语言:javascript
复制
SVN 官网:https://subversion.apache.org/
Github SVN 源码:https://github.com/apache/subversion

特点:

操作简单、入门简单、跨平台(MacOS 、Windows、Linux)操作 。

svn服务端

SVN是输入C/S服务类软件,有客户端和服务端。

SVN的服务端

Repository(源代码库):源代码统一存放的地方; Checkout(提取):当你手上没有源代码的时候,你需要从repository checkout一份; Commit(提交):当你已经修改了代码,你就需要Commit到repository; Update (更新):当你已经Checkout了一份源代码, Update一下你就可以和Repository上的源代码同步,你手上的代码就会有最新的变更。Update(获得最新的代码) -->作出自己的修改并调试成功 --> Commit(大家就可以看到你的修改了) 。

如果两个程序员同时修改了同一个文件呢, SVN可以合并这两个程序员的改动,实际上SVN管理源代码是以行为单位的,就是说两个程序员只要不是修改了同一行程序,SVN都会自动合并两种修改。如果是同一行,SVN会提示文件Confict, 冲突,需要手动确认。

在这里插入图片描述
在这里插入图片描述

安装VisualSVN Server 3.8.6

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

选择可视化界面,增加环境变量

在这里插入图片描述
在这里插入图片描述

选择标准版

在这里插入图片描述
在这里插入图片描述

不要出现中文、特殊字符和空格,端口号改为8000以后的,防止冲突

在这里插入图片描述
在这里插入图片描述

进度条走完,安装完毕

在这里插入图片描述
在这里插入图片描述

1.前期配置工作

1.先在svn目录下建立一个WebApp文件夹; 2.在WebApp文件下建立Shop,目前还只是文件夹,还需要和svn产生联系;

在这里插入图片描述
在这里插入图片描述

3.DOS命令行下输入 svnadmin create H:\SVN\Webapp\Shop 文件夹,如果配置成功,那么Shop应该多了6个文件;

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.服务器监管

代码语言:javascript
复制
Apache— http://localhost:8080 访问htdocs目录

SVN— svn://localhost: 访问相关的数据仓库(如Shop)

svnserve -d -r H:\SVN\Webapp\Shop
会弹出警告标志,然后光标会一直闪烁
在这里插入图片描述
在这里插入图片描述

通过以上指令,我们的SVN://localhost或者IP地址就可以直接指向Shop文件夹了。

3.权限控制

默认情况下,SVN服务器不允许匿名用户上传文件到服务端的,所以必须更改项目的相关控制文件。

打开conf,找到svnserve.conf;

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

更改第19行代码如下: 权限可读可写;

在这里插入图片描述
在这里插入图片描述

4.SVN客户端配置

1.如图安装,记得重启一下即可; 2.还可以安装汉化包。 3.配置完之后第一次牵手:checkout(检出) 打开隐藏功能如果能看到.svn这个文件夹就说明客户端和服务端连接起来了,检出成功;

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

使用客户端软件连接SVN服务器(checkout检出) 1.首先随便建个文件夹,取名jingli; 2.在你的项目目录右键—>TortoiseSVN—>版本库浏览器—>输入SVN服务器地址;

在这里插入图片描述
在这里插入图片描述

svn://svn服务器地址—>Shop目录(仓库)

在这里插入图片描述
在这里插入图片描述

显示隐藏文件,检出OK!

在这里插入图片描述
在这里插入图片描述

5.svn使用详解

1.启动服务器 svnserve -d -r H:\SVN\Webapp\Shop; 2.在新增文件页面右键—>提交; 3.填写必要信息,方便版本回退;

在这里插入图片描述
在这里插入图片描述

更新完毕;

在这里插入图片描述
在这里插入图片描述

如果有新员工李四狗加入公司,他应该如何下载项目源码呢?

1.首先建立lisigou文件夹,然后打开版本库浏览器;

在这里插入图片描述
在这里插入图片描述

2.输入svn地址

在这里插入图片描述
在这里插入图片描述

3.可看到之前的历史版本;

在这里插入图片描述
在这里插入图片描述

4.检出操作,下载源码到lisgou;

在这里插入图片描述
在这里插入图片描述

成功检出

在这里插入图片描述
在这里插入图片描述

如果李四狗也需要提交自己的代码,提交,服务器会同步更新;

在这里插入图片描述
在这里插入图片描述

如果经理想看李四狗今天做了啥,点击更新,即可;

在这里插入图片描述
在这里插入图片描述

图标集

在这里插入图片描述
在这里插入图片描述

版本回退

1.什么是版本回退

在这里插入图片描述
在这里插入图片描述

2.版本回退功能

1.经理删除了index.php,提交;

在这里插入图片描述
在这里插入图片描述

2.经理发现删错了,需要回退;

3.选择根据日志回退;

在这里插入图片描述
在这里插入图片描述

更新;

在这里插入图片描述
在这里插入图片描述

4.index.php文件恢复;

在这里插入图片描述
在这里插入图片描述

3.版本冲突

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

解决之道 避免版本冲突: 合理分配项目开发时间; 合理分派项目开发模块。

配置多仓库与权限

监管总目录权限限制

authz:授权文件,告诉用户有哪些权限 passwd:认证文件,表示用户名和密码 默认情况、两个文件都是禁用的,必须要开启上面两个文件,具体步骤如下:

1.注释匿名用户可读写的权限;

在这里插入图片描述
在这里插入图片描述

2.开启认证和授权文件;

在这里插入图片描述
在这里插入图片描述

3.编写认证文件,定义用户和密码:打开passwd;

在这里插入图片描述
在这里插入图片描述

4.编写授权文件:

在这里插入图片描述
在这里插入图片描述

分组+授权

测试是否成功

SVN的配置和管理

配置服务器的自启动服务 sc create SVNService binpath = “H:\SVN\bin\svnserve.exe – service -r H:/Files/jingli” start = auto 在cmd中输入相关命令: sc create 服务名称 binpath=空格"svnserve.exe --service"

在控制面板-管理工具-服务找到SVNserver 运行成功,svn监管服务开发成功 使用批处理文件来停止和开启管理器 启动服务 net start 服务名称 停止服务 net stop 服务名称 删除服务 sc delete 服务名称

封装成为.bat封装就可以减少很多工作量 模拟真实场景(重难点) 1、 使用钩子程序对项目进行更新

post-commit.tmpl: 事物完成之后触发的钩子程序

默认情况用批处理或者Shell指令完成

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019年03月17日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 什么是SVN?
  • 特点:
  • svn服务端
  • 安装VisualSVN Server 3.8.6
  • 1.前期配置工作
  • 2.服务器监管
  • 3.权限控制
  • 4.SVN客户端配置
  • 5.svn使用详解
  • 图标集
  • 版本回退
  • 配置多仓库与权限
  • SVN的配置和管理
相关产品与服务
云服务器
云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档