Rumah  >  Artikel  >  alat pembangunan  >  快看,虚拟机跟宿主机之间竟然可以使用SVN

快看,虚拟机跟宿主机之间竟然可以使用SVN

咔咔
咔咔asal
2020-06-24 15:46:052569semak imbas

作为程序员的我们,还是应该多做做尝试的。在写rabbitmq时由于在虚拟机操作,截图不好截,为了给大家呈现更好的效果,所以就给大家写一份宿主机跟虚拟机之间使用svn的操作流程。

本文主要围绕如下几个方面

  • 安装svn
  • 在宿主机连接虚拟机的svn
  • 使用钩子同步到web目录
  • 多项目使用svn
  • svn用户权限设置

本文实现环境

  • centos7.3
  • 所有操作均在虚拟机

一、安装svn

执行命令:yum install subversion

执行svn --version查看版本号,检测是否安装成功 在这里插入图片描述 创建版本库公共目录,在/var/下创建一个svn的目录mkdir /var/svn

当然这个可以自定义目录,看个人习惯 在这里插入图片描述 接着来到var/svn目录下,创建一个版本库

执行命令svnadmin create /var/svn/kaka,此时你的svn目录下会存在一个blog的版本库(其余俩个文件不用管,是后边做svn管理多项目才会用到的)

在这里插入图片描述 进入到kaka的版本库var/svn/kaka/conf可以看到三个文件

auth:控制权限的文件 passwd:控制密码的文件 svnserve.conf:为svn的配置信息 在这里插入图片描述 修改svnserve.conf配置信息,红色圈的都改就行。 在这里插入图片描述 接下来设置密码,打开文件passwd 在这里插入图片描述 在这里插入图片描述 设置权限,这里就是角色后边跟上用户设置的用户名 在这里插入图片描述 然后将刚刚修改的passwdauthz文件移到跟版本库一个目录下,执行命令mv passwd authz /var/svn 在这里插入图片描述 到这一步就完成了svn的安装和配置,接下来说明宿主机连接虚拟机的svn

二、宿主机连接虚拟机的svn

使用虚拟机的一定要注意ip地址 在这里插入图片描述 宿主机先得需要有svn客户端,这个安装就不说了,next到底就ok。

开启svn服务,执行命令svnserve -d -r /var/svn/,并检测是否开启成功 在这里插入图片描述 宿主机开始连接,地址就是虚拟机的ip地址,账号密码就是admin 123456 即可 在这里插入图片描述 此时文件就已经克隆到本地了 在这里插入图片描述 测试上传文件也成功 在这里插入图片描述 到这里我们就svn在宿主机连接并且提交文件到svn就成功了。

三、实现自动同步到web环境

由于是在虚拟机咔咔没有配置web目录,直接就在/usr/local/nginx/html

/var/svn/kaka/hooks下的post-commit.tmpl改为post-commit 在这里插入图片描述 执行指令mv post-commit.tmpl post-commit并且权限给满 在这里插入图片描述 修改post-commit文件里边的内容,但是打开文件后就是一堆注释,咔咔提示一个指令将这些全部删掉

执行100 dd即可,就是删除100行的意思 在这里插入图片描述 并且添加一下内容

#!/bin/sh #设定环境变量,如果没有设定可能会出现update报错   export LANG='zh_CN.UTF-8'    SVN_PATH=/usr/bin/svn WEB_PATH=/usr/local/nginx/html/kaka/   LOG_PATH=/tmp/svn_update.log $SVN_PATH update $WEB_PATH ~

在这里插入图片描述 保存退出,我们在本地在提交一个新文件,新建456.txt文件提交 在这里插入图片描述 来到web目录看有没有文件/usr/local/nginx/html

很是明显是没有这个文件的,别慌! 在这里插入图片描述/usr/local/nginx/html这个目录下在操作最后一步

执行指令:svn co --username admin --password 123456 svn://192.168.254.135/kaka,这个时候我们宿主机的文件就已经通过svn克隆到我们的虚拟机了。 在这里插入图片描述 再到本地上传一次,看是否可以直接到虚拟机里。

经过测试已经很ok了。 在这里插入图片描述

四、多项目使用svn

其实在上边的截图里都看到了我的版本库里存在一个blog的版本。

操作步骤跟kaka的版本库是一模一样的。只不过直接把blog/conf下的passwdauthz的文件直接删掉即可

也就是多个版本库使用同一个权限和账号密码 在这里插入图片描述 同时给kaka和blog上传一个258.txt 在这里插入图片描述 在这里插入图片描述 到这一步就把多项目使用同一个svn就搞定了。

五、用户权限设置

为什么需要设置这个用户权限区分。

例如你传代码到了svn,这时公司来了个新同事,他需要熟悉代码,但是他只可拉取代码不能提交代码。

这个时候就需要进行用户权限设置了。来整起

登录用户new 在这里插入图片描述 这个时候只有r权限  没有w权限的new用户是提交不了文件的 在这里插入图片描述 在这里插入图片描述

Atas ialah kandungan terperinci 快看,虚拟机跟宿主机之间竟然可以使用SVN. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn