`
berrywu
  • 浏览: 127879 次
  • 性别: Icon_minigender_1
  • 来自: 福建
社区版块
存档分类
最新评论

Linux知识十:SVN安装配置与使用、SVN与Apache的整合

阅读更多

svn安装与使用知识:
svn安装所需软件:apr,apr-util,sqlite,neon,subversionyum install subversion:
在线安装版本库。./configure --prefix=/usr/local/subversion --with-apxs=/usr/local/apache2/bin/apxs --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr/bin/apu-1-config --with-ssl --with-zlib --enable-maintainer-mode:安装subversion时配置系数。
svn --version|svnserve --version:查看SVN版本。
svnserve -d|svnserve -d [--listen-port 端口号 ] -r /usr/bin:启动SVN服务。
netstat -nl|grep 3690:查看SVN占用3690端口状态。
ps -ef|grep svn:查看SVN进程是否启动。
htpasswd –c /SVNHome/conf/passwd.conf apache:在SVN账户文件中创建名为apache用户。
useradd -s /sbin/nologin -d /dev/null svn:创建svn专用用户。
chown -R svn.svn /usr/local/SVNHome/SVNRoot/husumiao:给目录分配属主、属组。
usage eg: svn delete ./tobeRemoveDir:从svn管理中排除,。
passwd.conf文件在Linux下设置规则:
 [test:/] //这表示,仓库test的根目录下的访问权限
 admin = rw //test仓库wooin用户具有读和写权限
 husumiao = r //test仓库bao用户具有读权限
 [test2:/] //test2仓库根目录下的访问权限
 wooin = r //wooin用户在test2仓库根目录下只有读权限
 bao = //bao用户在 test2仓库根目录下无任何权限
 [/] //这个表示在所有仓库的根目录下
 * = r //这个表示对所有的用户都具有读权限

SVN命令行知识:
svn help [命令]:查看命令帮助。
建立版本库的方法一:mkdir SVNHome文件和conf、SVNRoot 子文件后,在SVNRoot下使用svnadmin create husumiao:创建名为husumiao的版本库,修改husumiao/conf/passwd文件的svnserve.conf的password-db = ../../../conf/passwd。
svnadmin create --fs-type fsfs /usr/local/SVNHome/SVNRoot/husumiao:建立版本库方式二。
[[ 进入版本库存入目录:cd ../SVNHome  新建版本库名称:mkdir /test 创建版本库:svnadmin create --fs-type fsfs /SVNHome/test 修改验证机制:anon-access = none、auth-access = write、password-db = /opt/svn/conf/passwd、auth-db = /opt/svn/conf/authz、realm = module 之后授权版本库文件夹及子所有文件:chmod 777/775 -R text(文件夹名) ]]
创建版本库后建立统一的难证配置详细,在新建的版本库中找到conf/svnserve.conf文件添加或对应修改如下:
  anon-access = none
  auth-access = write
  password-db = /usr/local/SVNHome/conf/passwd
  auth-db   = /usr/local/SVNHome/conf/authz
  realm   = module
 /usr/local/SVNHome/conf/passwd文件信息配置:[users]用户名1  = 密码、用户名2 = 密码。
 /usr/local/SVNHome/conf/authz文件信息配置:[users]用户名1  = 密码、用户名2 = 密码。
svn import /要导入的目录 file:///usr/local/SVNRoot -m “说明文字”:导入数据到版本库,-m说明是必须的。
svn add ./文件:往svn中添加新的内容(文件或文件夹) 。
svn ci|commit -m “说明“:提交版本,-m说明是必须的。
svn delete svn://ip/版本库名/文件目录或文件 -m "说明":删除版本库指定文件,-m说明是必须的。
svn up|update -r 版本号 文件:在版本库中对文件更新到指定版本操作。
svn resolved:清理版本库。
svn lock -m “说明"  文件、svn unlock 文件:文件的锁定与解锁。
svn checkout一定要注意:ps -ef | grep svnserve 显示出来的信息svnserve指向的数据地址是你存放版本库地址(eg:usr/local/SVNHome/SVNRoot)。
    如果不是,先用pkill svnserve停止然后用 svnserve -d -r 存放版本库数据地址(eg:/usr/local/SVNHome/SVNRoot/),然后再使用 svn co svn:/ip/版本库名导出版本库。
svn co|checkout --username 用户名 --password 密码 svn://域名或IP地址/库名|svn checkout svn://域名或IP地址/库名:导出版本库操作。
svn co|checkout file:///版本库位置(eg:usr/local/SVNHome/SVNRoot/husumiao/):使用本地文件方式导出版本库。
svn checkout 后,svn会记住用户的信息,如果要更改,可以删去当前 os 用户 / .subversion/auth/svn.simple 里边的信息,也可以更改里边的文件或者svn --username abcd info svn://ip/版本库:将改成用户 abcd。
svnadmin dump 版本库位置(eg:/usr/local/SVNRoot/SVNHome/版本库名) >文件位置(eg:/www/文件名):导出一个版本库信息到一个文件中。
svnlook tree usr/local/SVNHome/SVNRoot/husumiao/:以列表的方式查看版本库中的文件结构。
svn ls|list svn://ip/版本库名|file:///版本库位置:查看版本库文件。
svn ls|list --verbose svn://ip/版本库名|file:///版本库位置:详细模式查看版本库文件,包括文件日期及权限等相关信息。
svn st|status path:目录下的文件和子目录的状态,正常状态不显示(不在svn的控制中;M:内容被修改;C:发生冲突;A:预定加入到版本库;K:被锁定)。
svn st|status -v path:显示文件和子目录状态(第一列保持相同,第二列显示工作版本号,第三和第四列显示最后一次修改的版本号和修改人),注:svn status、svn diff和 svn revert命令在没有网络的情况下也可以执行,原因svn在本地的.svn中保留了本地版本的原始拷贝。
svn log path:查看日志信息(eg:svn log test.php 显示这个文件的所有修改记录,及其版本号的变化)。
svn info path:查看文件详细信息(eg:svn info test.php)。
svn di|diff path:比较差异,将修改的文件与基础版本比较(eg:svn diff test.php)。
svn di|diff -r m:n path:对版本m和版本n比较差异,(eg:svn diff -r 200:201 test.php)。
svn merge -r m:n path:将两个版本之间的差异合并到当前文件(eg:svn merge -r 200:205 test.php,将版本200与205之间的差异合并到当前文件,但是一般都会产生冲突,需要处理一下)。
svn sw|switchs:更新工作副本至不同的URL(eg:switch URL [PATH]|switch –relocate FROM TO [PATH...]。
svn resolved:解决冲突,移除工作副本的目录或文件的“冲突”状态(ef:resolved PATH…),本子命令不会依语法来解决冲突或是移除冲突标记,它只是移除冲突的,相关文件,然后让 PATH 可以再次提交。
svn cat 目标[@版本]: 输出指定文件或URL的内容,如果指定了版本,将从指定的版本开始查找(eg:svn cat -r PREV 文件 > 文件 (PREV 是上一版本,也可以写具体版本号,这样输出结果是可以提交的) 。
SVN一般问题:
SVN 由于目标机器积极拒绝,无法连接解决方案:svnserve -d -r 服务端服务打开、svnserve.conf文件在里面配置。
No repository found 解决方案:先用pkill svnserve停止然后用 svnserve -d -r 存放版本库数据地址(eg:/usr/local/SVNHome/SVNRoot/),然后再使用 svn co svn:/ip/版本库名导出版本库。
认证失败解决方案:查看svnserve.conf文件中的 password-db所对应的文件是否存在、对应文件的目录及后缀名。

SVN与Apache整合:
修改对应的httpd.conf文件,安装subversion后,apache的conf/httpd.conf文件会自动增加了模块。
LoadModule dav_svn_module     modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
相应的so文件也自动copy到了apache/modules,这些工作就不用自己动手了。需要自己动手修改apache下的httpd.conf最后增加以下内容:
<Location /svn>             #定义网页目录为/svn
 DAV svn              #开启svn(融合apache的svn哦)
 SVNPath /usr/local/SVNHome/SVNRoot       #版本库的目录
 SVNListParentPath On           #开启svn版本库父目录功能
 SVNParentPath /usr/local/SVNHome       #指定父目录位置,以后所有版本库都将存放在该目录下
 AuthType Basic             #指定授权模式
 AuthName "SVN REPOS"           #登陆窗口标题显示SVN REPOS
 AuthUserFile /usr/local/SVNHome/conf       #指定访问版本库的账户和密码存放文件,该文件需要用apache的htpasswd命令创建
 AuthzSVNAccessFile /usr/local/SVNHome/conf/auth    #指定访问版本库的用户和组的权限控制文件
 Require valid-user            #要求有效的用户才能访问
</Location> #字段结束标志
注意:
(1) SVNPath一定要跟./svnadmin create /data/svn/svnroot的目录一样。
(2) 目录svnroot的权限设置成755

编辑工作知识:
修改Zend Studio为中文/英文版方法:打开用户配置文件:……\ZDE\config_5.5\desktop_options.xml,
把其中的预览无高亮打印?
   1. <customized_property ID="desktop.language"> 
   2.    <locale language="en" country="" variant=""/> 
   3.   </customized_property> 
改为预览无高亮打印?
   1. <customized_property ID="desktop.language"> 
   2.    <locale language="zh" country="" variant=""/> 
   3.   </customized_property>libxml2知识:libxml2-2.6.32.tar.gz:安装包名。
./configure --prefix=/usr/local/php --with-apxs=/usr/local/apache --with-mysql:配置准备安装。
yum install libxml2:在线安装升级。
ps -ef | top:查看系统所有进程。
ps -ef | grep bash/conf/ssh/文件名/进程号:查看shell进程信息/系统各种配置/服务器能登录的账号/文件运行所占用的进程名称/进程状态。
ps -ef | more:运行时进程|分页查看功能。
gcc 文件名.c -o 编译后的文件名:使用系统编译C程序文件、编译之后使用 ./编译后的文件名:执行文件。
php 文件名.php:执行php文件。
pwd/man pwd:查看当前目录/查看当前目录相关信息。
cd -/cd/cd ..:回到之前的目录/最上级目录/上一级目录、cd /:进入根目录。

分享到:
评论

相关推荐

    Linux整合Apache和SVN

    在IT行业中,Linux系统因...总之,Linux上的Apache与SVN整合提供了一种方便、高效的代码版本控制方式,对于团队协作和项目管理有着重要作用。通过以上步骤,你可以成功地在Linux环境中搭建起一个功能完善的SVN服务器。

    CentOS下安装apache和svn并为svn配置http支持

    在CentOS上安装Apache和SVN,并配置SVN使用HTTP访问,需要对Linux下的软件安装、Apache的模块配置、以及SVN的仓库管理有一定的了解。上述过程涉及到了编译安装多个关键组件,并对其进行配置来实现整合。确保各个...

    svn使用说明书(客户端服务器端安装配置、apache服务配置、在eclipse上的使用)

    **1 SVN 简介** ...通过以上步骤,就可以实现SVN的客户端服务器端安装配置、Apache服务配置以及在Eclipse上的使用。在实际工作中,理解这些基本操作有助于团队高效、有序地进行软件开发和版本管理。

    CentOS 6.5搭建Apache整合SVN 1.8.5服务器(多版本库权限配置)

    总结来说,本文详细介绍了如何在CentOS 6.5上建立一个Apache整合SVN 1.8.5的服务器,并提供了多版本库的权限配置方法。这使得团队能够高效地协作和管理代码库,但未涵盖的源码包安装需要另外进行。

    SVN服务器在Linux上的安装和配置

    1. **Subversion和Apache整合服务器的安装与配置**:介绍如何在Linux系统上安装Apache HTTP Server,并使其支持Subversion版本控制系统。 2. **Subversion的认证与授权**:探讨如何设置用户的认证和授权规则,确保...

    SVN安装包和使用

    2. **Linux安装**: 使用包管理器如`apt`(Ubuntu)或`yum`(CentOS)进行安装,命令通常为`sudo apt install subversion` 或 `sudo yum install subversion`。 3. **MacOS安装**: 可以通过Homebrew安装,命令是`...

    SVN的安装及配置

    - 启动 SVN 服务:根据所使用的服务器环境,可能需要配置 SVN 服务器,如通过 `svnserve`、Apache HTTPD 或其他支持 SVN 的 Web 服务器。 ### SVN 常用命令详解 #### 1. `svnadmin` 命令 `svnadmin` 是 SVN 的...

    SVN配置管理及工具使用

    1. **安装与配置SVN**: - 安装SVN客户端:对于Windows用户,可以使用TortoiseSVN;对于Linux或Mac用户,可安装命令行工具如`svn`。 - 配置SVN服务器:通常使用Apache HTTP Server或VisualSVN Server作为服务器端...

    apache+svn+trac安装软件

    **Apache的安装与配置** 1. 下载Apache HTTP Server的最新稳定版本,通常为httpd。 2. 安装Apache,这通常涉及解压、编译和安装步骤。例如,在Unix/Linux系统中,可以使用`./configure`, `make`, 和 `sudo make ...

    rehl5(64位)系统安装SVN详细操作文档及相应安装包

    这是我整理的SVN版本控制软件在REHL5(64位)上的安装文档,里面有详细...安装之后可以通过apache浏览器直接访问,里面有将SVN与apache整合的配置说明。 注:文档中红色的为特别注意的。 另外权限问题也需要留意一下。

    SVN的相关使用及服务器配置

    - 对于Linux系统,通常使用`svnserve`或Apache HTTPD服务器(通过mod_dav_svn模块)。 - 对于Windows,可以使用VisualSVN Server等图形化管理工具。 #### 2. 创建仓库 - 使用`svnadmin create`命令创建一个新的SVN...

    svn.rar_svn_svn教程

    在本文中,我们将深入探讨SVN的基本概念、安装与配置、日常操作以及相关教程资源。 **一、SVN基本概念** 1. **版本控制**:SVN的核心功能是版本控制,它记录每次对文件或目录的更改,使得团队成员可以协同工作,...

    svn搭建

    总的来说,搭建和使用svn涉及到服务器配置、权限管理、客户端操作等多个环节,理解并熟练掌握这些知识点,能够有效地提升团队的开发效率和代码管理质量。通过在MyEclipse等IDE中整合svn,可以让开发者更加便捷地进行...

    SVN服务端命令行的使用心得.rar

    以下是对SVN服务端命令行使用的一些关键知识点的详细说明: 1. 安装与配置: 在Windows上,可以下载VisualSVN Server来安装和管理SVN服务器。在Linux或Unix系统中,通常使用`apt-get`或`yum`来安装`subversion`。...

    SVN使用手册

    在Linux或Unix系统中,通常使用svnserve或Apache HTTPD服务器作为SVN服务端。配置包括创建版本库、设置用户访问控制列表(ACL)等。 3. SVN操作命令: - `svn checkout`:从版本库获取工作副本。 - `svn update`...

    svn-server-client

    安装过程中需配置SVN库,即存储项目文件的仓库。 - 仓库创建:仓库是SVN存储所有版本信息的地方。可以使用`svnadmin create`命令创建新的仓库。 - 配置访问控制:服务器需要设置访问权限,允许特定用户或组访问...

    svn应用笔记

    这篇博文将深入探讨SVN的基本概念、安装与配置、日常使用以及解决常见问题的方法。 1. SVN基本概念 - 版本库:存储项目所有文件和版本信息的地方。 - 工作副本:用户在本地计算机上复制的项目版本,可以进行编辑...

    svn服务器搭建

    1. **安装Subversion**:根据操作系统选择合适的安装包,例如在Linux系统中可以使用`apt-get`或`yum`命令安装,在Windows上则可以下载预编译的二进制包。确保安装过程中包含了svn服务端软件如`svnserve`或Apache ...

Global site tag (gtag.js) - Google Analytics