linux下svn客户端访问windows下的svn服务器

linux下svn客户端访问windows下的svn服务器,第1张

一,安装svn服务器

在Linux中安装了服务端,

$ yum install subversion

二,在Windows中安装客户端(TortoiseSVN-19427285-x64-svn-194msi)

三,基本的SVN服务器配置

1,新建一个目录用于存储SVN所有文件

$ mkdir /svn

2,新建一个版本仓库$ svnadmin create /svn/project

3,添加用户

要添加SVN用户非常简单,只需在/svn/project/conf/passwd文件添加一个形如“username=password”的 账号为username和密码为password

[users]

mysj = mysj

test = test

5,修改用户访问策略

/svn/project/conf/authz记录用户的访问策略,以下是参考:

[groups]

admin=mysj //将用户进行分组

user=test

[project:/] //进行授权

@admin = rw //r表示读,w表示写

@user = r

=

6,修改svnserveconf文件,让用户和策略配置升效

svnserveconf内容如下:

此处切记要注意空格,不然会导致svn配置不成功

[general]

anon-access = none

auth-access = write

password-db = /svn/project/conf/passwd

authz-db = /svn/project/conf/authz

7,启动服务器

# svnserve -d -r /svn

注意:如果修改了svn配置,需要重启svn服务,步骤如下:

$ ps -aux|grep svnserve

$ kill -9 ID号 杀死服务

$ svnserve -d -r /svn

四,在Windows系统中检出svn的文件,此时的地址也应该为 svn://Linux的ip地址/project/文件夹名(你自己创建的)。

  如何设置才能让Linux开机自动启动SVN

  本节主要讲解一下Linux开机自启动SVN,上节我们讲解了Windows下开机自动启动SVN服务,通过本节的介绍你可以做一个对比,看一下在两种操作系统中开机自动启动SVN服务的区别,希望本节对你学习有所帮助。

  在Redhat上配置好svnserve,通过Myeclipse访问,实现版本控制。但是开启svn服务是手工输入命令来启动,这样每次重启服务器后都得重新输一次命令,太麻烦。于是就有了新问题:如何让SVN随着服务器开机自己启动? 先了解一下Linux的自动运行程序,以下分割线内为转自

  http://hibaiducom/wangtao8899/blog/item/dd7365c41c5423a18226ace1html的内容。 华丽的分割线 在RedHatLinux中自动运行程序 1.开机启动时自动运行程序

  Linux加载后,它将初始化硬件和设备驱动,然后运行第一个进程init。init根据配置文件继续引导过程,启动其它进程。通常情况下,修改放置在 /etc/rc或/etc/rcd或/etc/rcd目录下的脚本文件,可以使init自动启动SVN其它程序。例如:编辑/etc/rcd /rclocal文件,在文件最末加上一行"xinit"或"startx",可以在开机启动后直接进入X-Window。 2.登录时自动运行程序

  用户登录时,bash首先自动执行系统管理员建立的全局登录script:/ect/profile。然后bash在用户起始目录下按顺序查找三个特殊文 件中的一个:/bash_profile、

  /bash_login、/profile,但只执行最先找到的一个。因此,只需根据实际需要在上述文件 中加入命令就可以实现用户登录时自动运行某些程序(类似于DOS下的Autoexecbat)。 3.退出登录时自动运行程序

  退出登录时,bash自动执行个人的退出登录脚本/bash_logout。例如,在/bash_logout中加入命令"tar-cvzfcsourcetgz*c",则在每次退出登录时自动执行"tar"命令备份*c文件。

  4.定期自动运行程序

  Linux有一个称为crond的守护程序,主要功能是周期性地检查/var/spool/cron目录下的一组命令文件的内容,并在设定的时间执行这些 文件中的命令。用户可以通过crontab命令来建立、修改、删除这些命令文件。例如,建立文件crondFile,内容 为"00923Jan*HappyBirthday",运行"crontabcronFile"命令后,每当元月23日上午9:00系统自动执 行"HappyBirthday"的程序("*"表示不管当天是星期几)。 

  wk_ad_begin({pid : 21});wk_ad_after(21, function(){$('ad-hidden')hide();}, function(){$('ad-hidden')show();});

  

  5.定时自动运行程序一次

  定时执行命令at与crond类似(但它只执行一次):命令在给定的时间执行,但不自动重复。at命令的一般格式为:at[-ffile]time,在指定的时间执行file文件中所给出的所有命令。也可直接从键盘输入命令:

  

1   $at12:00   

2   at>mailtoRoger-s″Havealunch″Ctr-D   3   Job1at2000-11-0912:00   

 

 

2000-11-0912:00时候自动发一标题为"Havealunch",内容

为plantxt文件内容的邮件给Roger。   

5   #!/bin/bash   6   RESTART=""#里面写相应服务代码   

7   START=""  8   STOP=""  9 

 

 case"$1"in   10   restart)   

11   $RESTART   12   echo"";;   13   start)   14   $START   

15   echo"";;   16   STOP)   

17   $STOP   

18   echo"";;   

19   )   

20   echo"Usage:$0{restart¦start¦stop}"   21   exit1   22   esac   23  

 

exit1

    

  脚本写完要修改一下权限chmodu+xtestsh 首先,linux随机启动SVN的服务程序都在/etc/initd这个文件夹里,里面的文件全部都是脚本文件(脚本程序简单的说就是把要运行的程序写 到一个文件里让系统能够按顺序执行,类似windows下的autorundat文件),另外在/etc这个文件夹里还有诸如名为 rc1d,rc2d一直到rc6d的文件夹,这些都是

  

  linux不同的runlevel,我们一般进入的Xwindows多用户的运行级别是第5 级,也就是rc5d,在这个文件夹下的脚本文件就是运行第5级时要随机启动的服务程序。需要注意的是,在每个rc(1-6)d文件夹下的文件其实都是 /etc/initd文件夹下的文件的一个软连接(类似windows中的快捷方式),也就是说,在/etc/initd文件夹下是全部的服务程序, 而每个rc(1-6)d只链接它自己启动需要的相应的服务程序!要启动scim(某一程序),我们首先要知道scim程序在哪里,用locate命令可 以找到,scim在/usr/bin/scim这里,其中usr表示是属于用户的,bin在linux里表示可以执行的程序。这样,我就可以编写一个脚本 程序,把它放到/etc/initd里,然后在rc5d里做一个相应的软链接就可以了。这个脚本其实很简单,就两行: #!/bin/bash /usr/bin/scim 第一行是声明用什么终端运行这个脚本,第二行就是要运行的命令。还需要注意的一点是,在rc5d里,每个链接的名字都是以S或者K开头的,S开头的表示 是系统启动是要随机启动的,K开头的是不随机启动的。这样,你就可以知道,如果我要哪个服务随机启动,就把它名字第一个字母K改成S就可以了,当然,把S 改成K后,这个服务就不能随机启动sVN了。因此,我这个链接还要起名为SXXX,这样系统才能让它随机启动。 华丽的分割 线 了解这些后,(计算机基础知识) 作法就很简单了。 1创建执行脚本svnsh(/root路径下),其内容很简单,如下: #!/bin/bash svnserve-d--listen-port8080-r/home/svnroot/repository 2添加可执行权限命令行运行#chmodug+x/root/svnsh 3添加自动运行打开(vi或gedit)/etc/initd/rcd/rclocal,在最后添加一行内容如下:/root/svnsh保存 退出http://wwwwoaidiannaocom。 4检查重启服务器,使用ps-ef看看svn进程是否启动了。哈哈,轻松解决,以后开机就自动启动svn了。

从出错信息来看,问题很明显,你的权限设置有问题,你没有权限

你需要创建一个apache的用户/口令文件,加用户进去,然后配置SVN的权限文件,为用户分配权限

详细步骤看参考我的百度文库中的SVN安装指南,虽然那是个针对windows环境安装的,但权限配置这部分基本可以通用

回复 X_newyork:我指的是这篇: http://wenkubaiducom/view/782f8de79b89680203d825b2html ,不过现在我一般推荐使用Collabnet Subversion Edge版SVN服务器,详见这篇: http://wenkubaiducom/view/85c1a4593b3567ec102d8a95html

查看svn手册。这很必要,知道每个文件的作用。

可以这样查找相关svn文件:

#查找有关svn关键字的目录及文件

find / -name "svn"

find / -name "Svn"

find / -name "SVN"

#根据以上查找到的配置文件,来了解本机svn服务器的配置方法

有时候也会整合apache哦,你可以在apache的配置文件找相关<Location>段

1、在新的服务器上配置相应的网络连接并设置新的IP地址。

2、修改/etc/network/interfaces配置文件,更新网卡接口信息。根据您使用的Linux发行版和版本不同,配置文件可能会有所不同,请确保修改正确的配置文件。

3、修改/etc/hosts配置文件,以便其他系统能够找到您的SVN服务器。在该文件中添加新的IP地址和主机名映射关系。

4、更新所有需要访问SVN服务器的客户端系统上的配置,将旧的IP地址替换为新的IP地址。这包括在SVN客户端配置文件、脚本或命令行中使用的IP地址等。

5、确认修改后重启服务器,以便使新的设置生效。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » linux下svn客户端访问windows下的svn服务器

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情