Linux SVN安装所需创建的文件夹(转)

分类: Linux

Linux SVN安装还是比较常用的,于是我研究了一下Linux SVN安装,在这里拿出来和大家分享一下,希望对大家有用。

1. Linux SVN安装所需module:#yum install mod_dav_SVN安装完毕之后发现,在/etc/httpd/conf.d下多出了subversion.conf,以及/etc/httpd /modules下多出了 mod_dav_svn.so和mod_authz_svn.so两个文件,这正是subversion.conf中所需要的。

2. 修改subversion.conf,取消一下几行的注释,使之成为:

  1. <Location /repos>
  2. DAV svn
  3. SVNParentPath /var/www/svn/
  4. #
  5. # # Limit write permission to list of valid users.
  6. # <LimitExcept GET PROPFIND OPTIONS REPORT>
  7. # # Require SSL connection for password protection.
  8. # # SSLRequireSSL
  9. #
  10. # AuthzSVNAccessFile /etc/httpd/authz.conf
  11. # AuthType Basic
  12. # AuthName "Please enter your name and password"
  13. # AuthUserFile /etc/httpd/conf.d/authfile
  14. # Require valid-user
  15. # </LimitExcept>
  16. </Location>

其中,Linux SVN安装ParentPath是所有Repository的上层目录,此处并没有对访问Linux SVN安装的Repository进行限制,就像google code一样,无须用户名密码即可查看,甚至checkout源代码。

3. 在/var/www/下创建一个svn/的文件夹,并在此目录下创建subversion版本库:
$ svnadmin create your_repo_name

4. 进入该repository,修改配置文件,位于your_repo_name/conf下,首先修改svnserve.conf,找到并去掉以下几行的注释:

  1. anon-access = read #匿名访问的权限,可以是read,write,none,默认为read
  2. auth-access = write #认证用户的权限,可以是read,write,none,默认为write
  3. password-db = passwd #密码数据库的路径
  4. authzauthz-db = authz #用户操作权限

5. 修改passwd文件,其格式为:

  1. [users]
  2. user1 = password1
  3. user2 = password2

6. 修改authz文件,格式为:针对每一个repo_name下的目录,指定每一个用户应该具有怎样的权限(注意每行前面不能有空格):

  1. [repo_name:/directory1]
  2. user1 = rw #user1具有read和write权限
  3. [repo_name:/directory2]
  4. user2 = r #user2只具有read权限

7. 在windows下用TortoiseSVN导入项目:
将项目初始文件,建立成包含以下三个文件夹的形式,其中项目根目录放入trunk下:

  1. svn_temptrunk #包含项目整体的,稳定的代码
  2. svn_tempbranch #包含项目的一个分支,如一个子功能
  3. svn_temptag #标志项目的一个milestone,如一个release
  4. 然后使用TortoiseSVN的import功能,这时可能会出现Permission denied的问题,这是因为上传文件的目录的owner是root,需要修改目录的owner:
  5. Can‘t open file ‘/var/www/svn/repo_name/db/txn-current-lock‘: Permission denied
  6. $ cd /var/www/svn
  7. $ chown -R apache.apache repo_name
  8. # chcon -R -t -t http_sys_content_rw_t repo_name #这一步不需要,因为已经关闭了selinux

这样可能存在问题,就是任意用户如果知道了Linux SVN安装下载的地址,都可以import任意文件到repository中。这可能需要引入访问控制(to be continued)。[@[email protected]]

时间: 2024-12-10 07:26:47

Linux SVN安装所需创建的文件夹(转)的相关文章

DirectX 安装报错: 不能信任一个安装所需的压缩文件,请检查加密服务是否启用并且cabinet文件证书是否有效

DirectX 安装报错 不能信任一个安装所需的压缩文件,请检查加密服务是否启用并且cabinet文件证书是否有效 是直播软件open broadcaster software,这个软件安装的时候提示"your system is missing DirectX components that Open Broadcaster Software requires.Would you like to download them?"然后点是,就跳转微软的官方下载页面了. 下载dxwebse

用SVN在github下下载一个文件夹到本地

我用的TortoiserSVN,安装什么的都很简单啦. 首先在本地创建一个文件夹为了存放你下载下来的那个文件夹. 右键点击这个新建文件夹,装了小乌龟(TortoiserSVN)的话就会有SVN Checkout..这个选项,点击它,不要犹豫. 假设你要下载到本地的github上的url路径是 https://github.com/reactjs/react-router/tree/master/demo 在弹出的checkout对话框的URL of repository这个选项中将你的url路径

如何在桌面上创建程序文件夹让每个登录用户都能访问呢?

如何在桌面上创建程序文件夹让每个登录用户都能访问呢? ?Lander Zhang 专注外企按需IT基础架构运维服务,IT Helpdesk 实战培训践行者博客:https://blog.51cto.com/lander IT Helpdesk 工程师实战培训课程:https://edu.51cto.com/lecturer/733218.html轻松进外企:IT Helpdesk工程师实战自学之路:https://blog.51cto.com/lander/2413018更新时间:2019/8/

vue create 命令不创建node_modules文件夹的原因和解决方法

运行vue create 命令后并没有创建node_modules文件夹,所以npm run dev命令报错,'webpack-dev-server' 不是内部或外部命令,也不是可运行的程序 或批处理文件. 运行npm install 安装node_modules文件,再次运行npm run dev成功,Your application is running here: http://localhost:8080 npm install不成功的解决办法是?——执行npm cache clean

eclipse maven工程中src/main/resources目录下创建的文件夹是包图标的解决方法

如图:在src/main/resources目录下创建的文件夹却以包的图标显示  修改方法: 入下图,按顺序1 ,2,3,4操作,把3处remove,在4处添加**  修改后如下:  然后点击完成后,文件夹图标显示正常了 

Windows下使用创建多层文件夹 SHCreateDirectoryEx 函数需要注意的问题

1.在使用SHCreateDirectoryEx函数创建多层文件夹的过程中,发现在文件夹路径中,只能使用\\而不能使用/,否则将创建文件夹失败. 2.下面为在MFC中使用的代码片段 CString new_path = "C:/abc/d/e"; //SHCreateDirectoryEx函数必须使用\\,不能使用/ new_path.Replace("/", "\\"); //判断是否存在该文件夹 if (!PathIsDirectory(ne

linux下的c语言编程删除文件夹

刚刚在学习开始做新项目的时候,学长布置了一项任务,就是在给定一个目录下,要将这个目录下一个星期之前的目录包括里面的文件全部删除,只保留这一个星期内的.百度了好久的资料,终于完成,记录一下防止忘记.(注:文件夹名称默认为日期格式,如20140716) #include<dirent.h> #include<sys/types.h> #include<string.h> #include<stdlib.h> #include<unistd.h> #i

判断文件夹是否存在,不存在则创建对应文件夹

// 判断文件夹是否存在,不存在则创建对应文件夹 NSFileManager *fileManager = [NSFileManager defaultManager]; NSString *path = @"/Users/apple/Desktop/导出路径/嘻嘻"; BOOL isDir = FALSE; BOOL isDirExist = [fileManager fileExistsAtPath:path isDirectory:&isDir]; if(!(isDirE

创建.ssh文件夹

前因:在使用hexo githubpages 创建博客时,遇到创建的密钥不能放入.ssh文件夹中,发现用户目录下根本没有.ssh文件夹,即便使用了$ssh-keygen -t rsa -C "[email protected]"命令 错误:生在用户目录下创建.ssh文件夹,提示创建名不可,原因是.ssh文件夹是属于隐藏文件 解决:那么问题的关键就是如何创建一个隐藏文件夹了 运行cmd 在cmd窗口中输入如下命令: md D:\.ssh\ (现在以在D盘创建文件该文件为例)