精华内容
下载资源
问答
  • linux svn服务器搭建

    2018-03-06 11:08:42
    Subversion(SVN)是一个开源的版本控制系統,管理着随时间改变的数据。这些数据放置在一个中央资料档案库中,这个档案库很像...linux svn服务器部署 linux svn客户端命令操作 linux svn备份与恢复   一、l

    Subversion(SVN)是一个开源的版本控制系統,管理着随时间改变的数据。这些数据放置在一个中央资料档案库中,这个档案库很像一个普通的文件服务器,它会记住每一次文件的变动,这样就可以把档案恢复到旧的版本,或是浏览文件的变动历史。


    本文目录:

    linux svn服务器部署

    linux svn客户端命令操作

    linux svn备份与恢复

     

    一、linux svn服务器部署

    1、安装svn

    [root@yang~]#yum install -y subversion

    [root@yang~]#svnserve--version

    svnserve,version 1.6.11 (r934486)

     

    2、创建SVN版本库

    [root@yang~]# mkdir /data/svn

    [root@yang~]# svnadmin create /data/svn/project

    [root@yangproject]# ls /data/svn/project/

    conf  db  format  hooks  locks  README.txt

     

    3、配置SVN

    [root@yangproject]# cd /data/svn/project/conf/

    [root@yangconf]# ls

    authz  passwd svnserve.conf

     

    文件说明:

    1)svnserve.conf:  svn服务配置文件下。

    2)passwd:         用户名密码文件。

    3)authz:          svn权限配置文件。

     

    svnserve.conf文件

     该文件配置项分为以下5项:

           anon-access:  控制非鉴权用户访问版本库的权限。

           auth-access: 控制鉴权用户访问版本库的权限。

           password-db:  指定用户名口令文件名。

           authz-db:    指定权限配置文件名,通过该文件可以实现以路径为基础的访问控制。

           realm:        指定版本库的认证域,即在登录时提示的认证域名称。若两个版本库的认证域相同,建议使用相同的用户名口令数据文件

     

    配置如下:

            [root@yangconf]# grep -E "anon-access =|auth-access =|password-db =|authz-db =|realm="  svnserve.conf

           anon-access = none

           auth-access = write

           password-db = passwd

           authz-db = authz

           realm = /data/svn/project

     

    passwd文件

    作用是配置用户名和密码

    [root@yangconf]# cat passwd

    [users]

    yangyun= yangyunpasswd

    test = testpasswd

     

    authz文件

    配置用户访问权限

    [root@yangconf]# cat authz |grep -v '#'

    [aliases]

    [groups]

    project_w=yangyun

    project_r=test

    [/]

    project_w=rw

    project_r=r

     

    4、启动svn服务

    [root@yangconf]# svnserve -d -r /data/svn

     

    5、初始化svn数据

    [root@yangdjango]# svn import mysite file:///data/svn/project/ -m 'initial import'

    将会拷贝目录mysite到版本库的project下

    [root@yangdjango]# svn list file:///data/svn/project

    manage.py

    mysite/

    static/

    templates/

    web02/

    在导入之后,原来的目录树并没有转化成工作拷贝,为了开始工作,还是需要运行svn checkout导出一个工作拷贝。

     

    二、linux svn客户端命令操作

    1、将文件checkout到本地目录

    svn checkout   path(path是服务器上的目录)

    简写:svn co

    例:

    svn co svn://115.28.24.178/project   --username=yangyun --password=yangyunpasswd

    #指定版本的文件

    svn co svn://115.28.24.178/project   --username=yangyun --password=yangyunpasswd -r 5 

     

    2、往本地版本库中添加新的文件

    svn add   file      #此命令得在checkout出来的路径里才能操作

    例如:

    cp /root/123.txt./

    svn add   123.txt   #把123.txt加入到本地库中

    A         123.txt

     

    3、将改动的文件提交到版本库

    svn commit   -m "LogMessage" [-N] [--no-unlock] PATH(如果选择了保锁,就使用--no-unlock开关)

    简写:svn ci

    例:

    svn commit   123.txt -m 'add 123.txt'  #只提交123.txt

    svn commit  -m 'add 123.txt'       #默认提交当前目录下的所以文件

    svn commit   *.txt -m 'add 123.txt'     #也可以正则匹配文件提交

     

    4、加锁/解锁

    svn lock   -m "LockMessage" [--force] PATH

    例如:

    svn lock   -m "lock test file" test.php

    svn unlock   PATH

     

    5、更新到某个版本

    svn update   -r m path

    例如:

    svn update如果后面没有目录,默认将当前目录以及子目录下的所有文件都更新到最新版本。

    svn update   -r 200 test.php(将版本库中的文件test.php还原到版本200

    svn update   test.php(更新,于版本库同步。如果在提交的时候提示过期的话,是因为冲突,需要先update,修改文件,然后清除svn resolved,最后再提交commit

    简写:svn up

     

    6、删除文件

    svn delete   path -m "delete test fle"

    例如:svn delete svn://192.168.1.1/pro/domain/test.php -m "delete testfile"

    或者直接svn delete test.php 然后再svn ci -m 'delete testfile‘,推荐使用这种

    简写:svn (del, remove, rm)

     

    7、查看日志

    svn log   path

    例如:svn log test.php 显示这个文件的所有修改记录,及其版本号的变化

     

    8、查看文件详细信息

    svn infopath

    例如:svn info test.php   #可知道路径版本,时间,提交者等信息

     

    9、比较差异

    svn diff   path(将修改的文件与基础版本比较)

    例如:svn diff test.php

    svn diff   -r m:n path(对版本m和版本n比较差异)

    例如:svn diff -r 200:201 test.php   #可知道修改了哪些内容

    简写:svn di

     

    10、将两个版本之间的差异合并到当前文件

    svn merge   -r m:n path

    例如:svn merge -r 200:205 test.php(将版本200与205之间的差异合并到当前文件,但是一般都会产生冲突,需要处理一下)

     

    11SVN 帮助

    svn help

    svn help   ci  

     

    12、版本库下的文件和目录列表

    svn list   path  #显示path目录下的所有属于版本库的文件和目录

    简写:svn ls

     

    13、创建纳入版本控制下的新目录

    svn mkdir:创建纳入版本控制下的新目录。

    用法:

    svn mkdirPATH    #效果等同:mkdir test;svn add test;

     

    14、恢复本地修改

    svn revert:恢复原始未改变的工作副本文件 (恢复大部份的本地修改)。

    revert:

    用法: revert PATH...

    注意: 本子命令不会存取网络,并且会解除冲突的状况。但是它不会恢复被删除的目录

     

    三、linux svn备份与恢复

    1、全量备份:

    curr=`svnlook  youngest /data/svn/project/`  #此处是查询工程目录的最新版本

    svnadmin  dump /data/svn/repos/test --revision 0:$cur --incremental  >0-"$curr"svn.bak 

    echo  $curr >/tmp/svn_revision

     

    2、增量备份

    old=`cat  /tmp/svn_revision`

    new=`svnlook   youngest /data/svn/project/`

    svnadmin  dump /data/svn/repos/test --revision $old:$new --incremental  >$old"-"$new"svn.bak 

     

    3svn恢复

    恢复顺序从低版本逐个恢复到高版本;即,先恢复最近的一次完整备份,然后恢复紧挨着这个文件的增量备份。

    cd /data/svn/repos/ 

    svnadmin   create test2 

    svnadmin   load test2 < /data/svnback/20110719/0-1112svn.bak  

    svnadmin   load test2 < /data/svnback/20110719/1113-1120svn.bak  

    展开全文
  • linux SVN服务器搭建

    2017-03-02 15:23:31
    SVN服务器搭建 环境准备 1. 操作系统 CentOS Linux release 7.0.1406 (Core)   2. 安装包 包名 描述 apr-1.5.2.tar.gz Apache可移植运行库(apache依赖) apr-util-1.5.4.tar.gz apr工具(apa

    SVN服务器搭建

    环境准备

    1.     操作系统

    CentOS Linux release 7.0.1406 (Core)

     

    2.     安装包

    包名

    描述

    apr-1.5.2.tar.gz

    Apache可移植运行库(apache依赖)

    apr-util-1.5.4.tar.gz

    apr工具(apache依赖)

    httpd-2.4.25.tar.gz

    Apache安装包

    pcre-8.39.tar.gz

    perl语言兼容正则表达式(apache依赖)

    scons-2.5.0.tar.gz

    自动化构建工具(serf依赖)

    sqlite-autoconf-3160200.tar.gz

    sqlite安装包

    subversion-1.9.5.tar.gz

    Svn安装包

    openssl-1.0.2j.tar.gz

    Openssl安装包

    说明:

    1.      7.0环境sqlite版本较高,无需安装,redhat6.5需要更新sqlite版本;

    2.      安装时利用操作系统自带的openssl,没有手动安装openssl。

    安装步骤

    1.     安装apr

    tar -zxf apr-1.5.2.tar.gz

    cd apr-1.5.2

    ./configure --prefix=/usr/local/apr

    make

    make install

     

     

     

    2.     安装apr-util

    tar -zxf apr-util-1.5.4.tar.gz

    cd apr-util-1.5.4

    ./configure --prefix=/usr/local/apu –with-apr=/usr/local/apr

    make

    make install

     

    3.     安装pcre

    tar -zxf pcre-8.39.tar.gz

    cd pcre-8.39

    ./configure --prefix=/usr/local/pcre

    make

    make install

     

    4.     安装apache

    tar -zxf httpd-2.4.25.tar.gz

    cd httpd-2.4.25

    ./configure --prefix=/usr/local/apache2--with-apr=/usr/local/apr --with-apr-util=/usr/local/apu--with-pcre=/usr/local/pcre --enable-modules=all --enable-dav--enable-maintainer-mode --enable-rewrite

    make

    make install

     

    5.     安装scons

    tar -zxf scons-2.5.0.tar.gz

    cd scons-2.5.0

    python setup.py install

     

    6.     安装subversion

    tar -zxf subversion-1.9.5.tar.gz

    cd subversion-1.9.5

    ./get-deps.sh

    安装serf

    cd serf

    scons PREFIX=/usr/local/serf APR=/usr/local/aprAPU=/usr/local/apu

    scons install

    scons –c

    切换至subversion-1.9.5目录

    ./configure --prefix=/usr/local/subversion--with-apr=/usr/local/apr --with-apr-util=/usr/local/apu--enable-mod-activation --with-apache-libexecdir=/usr/local/apache2/modules --with-apxs=/usr/local/apache2/bin/apxs--with-serf=/usr/local/serf

    make

    make install

     

    7.     创建用户

    groupadd zhubaosvn

    useradd -g zhubaosvn zhubaosvn

     

    8.   配置环境变量

    vi /etc/profile

    SVN_HOME=/usr/local/subversion

    HTTPD_HOME=/usr/local/apahce2

    PATH=$SVN_HOME/bin:$HTTPD_HOME/bin:$PATH

     

    使环境变量生效

    source /etc/profile

     

    9.     创建svn版本库

    利用zhubaosvn用户,在zhubaosvn目录下执行命令

    svnadmin create /home/zhubaosvn/bsa

     

    10.  创建svn用户,进行相应配置

    创建admin用户

    htpasswd -cmb bsa/passwd admin 123

    创建zhu用户

    htpasswd -mb bsa/passwd zhu 123

    配置权限

    vim bsa/conf/authz

    [groups]

    g_admin = admin

    g_develop = zhu

    [/]

    @g_admin = rw

    * = r

     

    vim bsa/conf/svnserve.conf

    在[general]下加入

    anon-access = none

    auth-access = write

    password-db = ../passwd

    authz-db = authz

     

    说明:

    anon-access = none #表示匿名登陆下的用户权限为空。即:系统不支持匿名登陆

    auth-access = write #通过验证的用户可以读和写

    password-db = ../passwd #用户保存文件的路径

    authz-db = authz #权限管理文件

    11.  配置apache连接svn

    vim /usr/local/apache2/conf/httpd.conf

    User zhubaosvn

    Group zhubaosvn

     

    <Location /svn>

        DAV svn

        SVNParentPath /home/zhubaosvn

        AuthType Basic

        AuthName "hello world!"

        AuthUserFile /home/zhubaosvn/bsa/passwd

        AuthzSVNAccessFile /home/zhubaosvn/bsa/conf/authz

        Require valid-user

    </Location>

     

    说明:

    SVNParentPath /home/zhubaosvn #版本库根目录的父目录

    AuthType Basic #连接类型设置 Basic表示基本验证

    AuthName "hello world!" #客户端认证时提示对话框标题

    AuthUserFile /home/zhubaosvn/bsa/passwd #版本库用户信息文件

    AuthzSVNAccessFile/home/zhubaosvn/bsa/conf/authz #版本库用户认证文件

    Require valid-user #告诉apache在passwd中所有的用户都可以访问

     

     

    12.  https配置

    cd /usr/local/apache2/conf

     

    openssl genrsa 1024 > server.key

    openssl req -new -key server.key >server.csr

    openssl req -x509 -days 2048 -keyserver.key -in server.csr > server.crt

    (这里要根据提示输入用户信息)

    vim /usr/local/apache2/conf/httpd.conf

     

    取消Include conf/extra/httpd-ssl.conf前的注释

    Include conf/extra/httpd-ssl.conf

    svn根目录强制https访问

    <Location /svn>

        SSLRequireSSL

    </Location>

     

     

    13.  启动apache

    Apachectl –k start

     

    安装完成!!!

     

    客户端访问

    1.     利用TortoiseSVN访问


     

    输入上述创建的用户名密码


    Checkout 成功!!!

    Commit、update等操作均成功!!!

     

    2.     利用浏览器访问

    url:

    https://10.67.8.62/svn/bsa


    填入上述创建的用户名密码



    访问正常!!!

     

    附录

    参考文档

    http://blog.csdn.net/u010062710/article/details/44676441

    http://www.th7.cn/system/lin/201403/51431.shtml

    http://blog.csdn.net/w565911788/article/details/7623345

     

    展开全文
  • Linux svn服务器搭建

    2017-07-09 19:08:23
    本文的目的,也就是想让后继之人在搭建svn服务器时不再犯错,不再被网上漫天的坑爹作品所坑害,故此总结 /******开始*********/ 系统环境:Centos 6.5 第一步:通过yum命令安装svnserve,命令如下: >yum -y ...

    鉴于在搭建时,参考网上很多资料,网上资料在有用的同时,也坑了很多人

    本文的目的,也就是想让后继之人在搭建svn服务器时不再犯错,不再被网上漫天的坑爹作品所坑害,故此总结

    /******开始*********/

    系统环境:Centos 6.5

    第一步:通过yum命令安装svnserve,命令如下:

    >yum -y install subversion

    此命令会全自动安装svn服务器相关服务和依赖,安装完成会自动停止命令运行

    若需查看svn安装位置,可以用以下命令:

    >rpm -ql subversion

    第二步:创建版本库目录(此仅为目录,为后面创建版本库提供存放位置)

    选择在var路径下创建版本库,当前处于根目录下,一次性创建如下:

    >mkdir /var/svn/svnrepos

    第三步:创建svn版本库

    在第二步建立的路径基础上,创建版本库,命令如下:

    >svnadmin create /var/svn/svnrepos/xxxx   (xxxx为你预期的版本库名称,可自定义)

    创建成功后,进入xxx目录下

    >cd /var/svn/svnrepos/xxxx

    进入目录,可以看见如下文件信息:

    第四步:配置修改

    进入已经创建好的版本库目录下,也就是前文说创建的xxxx

    进入conf

    >cd /var/svn/svnrepos/xxxx/conf

    conf目录下,一共存放三份重要的配置文件,如下:

     

    authz:负责账号权限的管理,控制账号是否读写权限

    passwd:负责账号和密码的用户名单管理

    svnserve.conf:svn服务器配置文件

    细节修改如下:(希望大家严格按照以下信息,不用参考网络上其他资料)

    修改authz文件信息,如下:

    >vi authz

    在文件内容的末尾,添加如下:

     

    只需在末尾添加,无需在文件其他部分修改和添加任何东西(请忽略groups被我马赛克的地方,那其实也是条无用的记录,我忘记删掉而已),末尾内容如下:

    [\]

    账号1 = rw

    账号2 = rw

    。。。。。

    rw表示赋予此账号可读写的权限,请注意[]中的斜杠,一定是反斜杠,有些教程说,需添加版本库名称在括号内,我直接建议就这写,这样写允许访问的权限更大,避免一些错误

    修改passwd文件信息

    >vi passwd

    账号密码文件无需做修改,也是直接将账号和密码信息追加到文件中即可,注意格式为:

    账号 = 密码

    例如:admin = 123456

    修改svnserve.conf(重要)

    vi svnserve.conf

    原始文件内容,都被注释掉的,我们只需要去掉4条指定内容前注释即可,如下:

     

    大多数网络资料,都会让大家将authz-db = authz这条给去掉注释,经过我本人多次被坑经验,此条去掉后,虽然svn服务器可以连接,但一直会提示“认证失败”,注释掉即可正常

    还有多数资料会让大家在realm = My First Repository处填写服务器ip,经过测试,填写后并无什么用处,所以大家去掉注释即可,无需做任何修改

    到此,配置已经全部完成,账号信息已经添加成功

    第五步:防火墙开启

    多数情况下服务器安装完成,配置完成后,无法连接svn服务器,均是防火墙问题,大家按照如下3条命令逐一执行即可

    >/sbin/iptables -I INPUT -p tcp --dport 3690 -j ACCEPT

    >/etc/init.d/iptables save

    >service iptables restart

    执行结果如下图:

     

    六:启动svn服务器

    在跟目录下,执行如下命令:

    >svnserve -d -r /var/svn/svnrepos

    启动成功后,可用ps -aux查看服务启动是否成功

    七:客户端访问svn服务器

    在windows客户端,输入地址:svn://ip地址:3690/xxxx   (iP地址为你linux的ip,xxxx为前文创建的版本库名称,3690为svn默认端口)

    弹出输入用户名和密码,输入即可访问

    到此,Linux下svn服务器搭建就总结完毕,感谢大家的阅读

    如果此文有帮助到你,请帮忙推广

    展开全文
  • Linux SVN服务器搭建

    2019-02-12 18:12:13
    Ubuntu 16.04.1 LTS (GNU/Linux 4.4.0-130-generic x86_64) 安装 apt show subversion (查看软件情况) apt install subversion (安装) svnserve --version (确认是否安装成功) dbkg -L subversion ...

    系统

    Ubuntu 16.04.1 LTS (GNU/Linux 4.4.0-130-generic x86_64)

    安装

    • apt show subversion (查看软件情况)
    • apt intall subversion (安装)
    • svnserve --version (确认是否安装成功)
    • dbkg -L subversion (寻找安装位置)

    配置

    • mkdir xxx新建一个目录xxx

    • svnadmin create xxx 新建SVN仓库并指向新建的目录

    • cd xxx/conf

    • vi authz 配置用户权限,[/]是应用于所有仓库,后面格式用户名 = 权限,可以设置多个用户
      在这里插入图片描述

    • vi passwd 配置用户密码,格式为 用户名 = 密码在这里插入图片描述

    • vi svnserve.conf
      在这里插入图片描述

    • svnserve -d -r xxx 启动

    • ps -ef | grep svn 获取PID
      在这里插入图片描述

    • netstat -anp | grep 4266 查看端口号,一般是3690

    • 客户端 Checkout(这里访问的根目录,也可以在IP后加上/项目名)
      在这里插入图片描述

    • 如果客户端访问不了,设置一下服务器防火墙

    设置开机启动

    展开全文
  • Linux SVN服务器搭建
  • linux svn 服务器搭建

    2015-11-26 14:50:38
    1、安装svn: yum install subversion 2、cd /usr/local/ 3、mkdir svn 4、chmod -R 777 svn/ 5、新建一个资源仓库 svnadmin create /usr/local/svn/xmb 6、进入目录 /usr/local/svn/xmb/conf vim passwd 设置...
  • Subversion(SVN)是一个开源的版本控制系統,管理着随时间改变的数据.这篇文章主要介绍了linux svn服务器搭建、客户端操作、备份与恢复,需要的朋友可以参考下
  • Visual SVN Server搭建自己的SVN服务器版本服务器一般在企业里都是专用的,有管理员负责仓库的管理维护。通常是用Git或者SVN,然后提交人自己装上客户端就行但如果需要自己管理自己的代码,应该怎么做呢?其实有很多...
  • 缺点:安装位置为yum默认,比如我们公司服务器上安装软件有自己的规定,一般会采用压缩包安装。以下是我在CentOS7.2(阿里云服务器)下部署方式,安装步骤如下:一、yum安装subversion 1. 安装subversion yum ...
  • 什么是ftpFile Transfer Protocol,是一种古老的传输协议,其主要用于服务器之间的文件传输ftp主要功能不同的用户都可以使用FTP,并根据用户角色设置不同的权限,角色主要包括 ①服务器上实体用户(real user) ②...
  • 我的svn版本 svn, version 1.7.14 (r1542130) compiled Nov 20 2015, 19:25:09 ... 我主要参考的是这两篇文章 Linux下安装SVN服务端简明教程 ...Linux下的SVN服务器搭建 第一篇博客和第二篇博客的区别有 aut...
  • ◆ 每个人从SVN服务器下载项目的最新文档(代码) ◆ 进入各自的分支,开始工作 ◆ 阶段性工作成果提交 ◆ 下班时间到了,合并各自的分支到服务器主分支 安装 下面就带大家在Linux下安装一个属于自己的版本控制...
  • 虽然Git成为主流,但是SVN有时还会使用到,简单描述一下在CentOS7下,SVN服务器多仓库的搭建安装yum -y install subversion #安装svnserve --version #查看安装的版本信息快速完成安装后,主要是仓库的搭建mkdir -p ...
  • 一、邮件服务器搭建准备1、准备一台服务器(云服务器或本地虚拟的服务器都可以)2、安装centos6/7系统,需要全新干净的系统环境。3、邮件服务器软件(U-Mail for CentOS 邮件服务器(7.x) 64位独立安装...
  • 一、安装SVN软件1、相关介绍SVN是Subversion的简称,是一个开放源代码的...说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的2、ubuntu下安装SVNLinux下开发常见于使用ubuntu桌面版。在ubuntu下可...
  • 自己申请了了一台DigitalOcean的服务器,用于平时个人玩着来用,搭了一个svn服务器linux的发行版本是ubuntu 使用一下svn这个命令,没有的话使用下面命令进行下载 apt-get install subversion 建立一个svn的存储目录...
  • 今天讲讲游戏Terraria《泰拉瑞亚》。它是由Re-Logic公司开发... Terraria《泰拉瑞亚》Steam截图准备工作:登录自己的VPS,我选择的是Google Cloud(简称GCP)和一台腾讯云服务器。配置不高,仅供三两好友娱乐使用。腾...
  • 本文部分例子引用linux搭建SVN服务器完全手册 一、简介 Subversion(SVN) 是一个开源的版本控制系統, 也就是说 Subversion 管理着随时间改变的数据。 这些数据放置在一个中央资料档案库 (repository) 中。 这个档案...
  • 服务器搭建 安装 sudo apt-get install -y subversion svnserve --version 创建仓库 cd /home sudo mkdir svn sudo svnadmin create svntest001 配置文件 authz 是权限控制文件 passwd 是帐号密码文件 ...
  • 公司产品部门想要个svn,于是我在局域网搭建了一个SVN给他们用。 安装步骤 (1) 先安装软件 yum install subversion # 安装 svnserve --version # 检测是否正常 (2)建立SVN版本库 mkdir /Svn_Data/ ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,996
精华内容 798
关键字:

linuxsvn服务器搭建

linux 订阅