导航:首页 > 操作系统 > linuxsvn客户端安装配置

linuxsvn客户端安装配置

发布时间:2025-09-25 08:23:07

Ⅰ 在linux下如何下载svn上的文件

linux下载svn客户端就可以使用命令下载文件。
1、将文件checkout到本地目录
svn checkout path(path是服务器上的目录)
例如:svn checkout svn://192.168.1.1/pro/domain
简写:svn co
2、往版本库中添加新的文件
svn add file
例如:svn add test.php(添加test.php)
svn add *.php(添加当前目录下所有的php文件)
3、将改动的文件提交到版本库
svn commit -m “LogMessage“ [-N] [--no-unlock] PATH(如果选择了保持锁,就使用–no-unlock开关)
例如:svn commit -m “add test file for my test“ test.php
简写:svn ci
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、查看文件或者目录状态
1)svn status path(目录下的文件和子目录的状态,正常状态不显示)
【?:不在svn的控制中;M:内容被修改;C:发生冲突;A:预定加入到版本库;K:被锁定】
2)svn status -v path(显示文件和子目录状态)
第一列保持相同,第二列显示工作版本号,第三和第四列显示最后一次修改的版本号和修改人。
注:svn status、svn diff和 svn revert这三条命令在没有网络的情况下也可以执行的,原因是svn在本地的.svn中保留了本地版本的原始拷贝。
简写:svn st
7、删除文件
svn delete path -m “delete test fle“
例如:svn delete svn://192.168.1.1/pro/domain/test.php -m “delete test file”
或者直接svn delete test.php 然后再svn ci -m ‘delete test file‘,推荐使用这种
简写:svn (del, remove, rm)
8、查看日志
svn log path
例如:svn log test.php 显示这个文件的所有修改记录,及其版本号的变化
9、查看文件详细信息
svn info path
例如:svn info test.php
10、比较差异
svn diff path(将修改的文件与基础版本比较)
例如:svn diff test.php
svn diff -r m:n path(对版本m和版本n比较差异)
例如:svn diff -r 200:201 test.php
简写:svn di
11、将两个版本之间的差异合并到当前文件
svn merge -r m:n path
例如:svn merge -r 200:205 test.php(将版本200与205之间的差异合并到当前文件,但是一般都会产生冲突,需要处理一下)
12、SVN 帮助
svn help
svn help ci
——————————————————————————
以上是常用命令,下面写几个不经常用的
——————————————————————————
13、版本库下的文件和目录列表
svn list path
显示path目录下的所有属于版本库的文件和目录
简写:svn ls
14、创建纳入版本控制下的新目录
svn mkdir: 创建纳入版本控制下的新目录。
用法: 1、mkdir PATH…
2、mkdir URL…
创建版本控制的目录。
1、每一个以工作副本 PATH 指定的目录,都会创建在本地端,并且加入新增
调度,以待下一次的提交。
2、每个以URL指定的目录,都会透过立即提交于仓库中创建。
在这两个情况下,所有的中间目录都必须事先存在。
15、恢复本地修改
svn revert: 恢复原始未改变的工作副本文件 (恢复大部份的本地修改)。revert:
用法: revert PATH…
注意: 本子命令不会存取网络,并且会解除冲突的状况。但是它不会恢复
被删除的目录
16、代码库URL变更
svn switch (sw): 更新工作副本至不同的URL。
用法: 1、switch URL [PATH]
2、switch –relocate FROM TO [PATH...]
1、更新你的工作副本,映射到一个新的URL,其行为跟“svn update”很像,也会将
服务器上文件与本地文件合并。这是将工作副本对应到同一仓库中某个分支或者标记的
方法。
2、改写工作副本的URL元数据,以反映单纯的URL上的改变。当仓库的根URL变动
(比如方案名或是主机名称变动),但是工作副本仍旧对映到同一仓库的同一目录时使用
这个命令更新工作副本与仓库的对应关系。
17、解决冲突
svn resolved: 移除工作副本的目录或文件的“冲突”状态。
用法: resolved PATH…
注意: 本子命令不会依语法来解决冲突或是移除冲突标记;它只是移除冲突的
相关文件,然后让 PATH 可以再次提交。

Ⅱ Linux中编译安装SubversionSVN客户端的教程

这篇文章主要介绍了Linux中编译安装Subversion(SVN)客户端的教程,尽管版本控制工具方面Git近来风光无限,但SVN凭借简洁的操作依然拥有不少忠实用户,需要的朋友可以参考下

Subversion(简称svn)是近年来崛起的版本管理软件系统,是cvs的接班人。目前,绝大多数开源软件都使用svn作为代码版本管理软件。
Subversion是一个版本控制系统,相对于的RCS、CVS,采用了分支管理系统,它的设计目标就是取代CVS。互联网上免费的版本控制服务多基于Subversion。
Subversion的版本库可以通过网络访问,从而使用户可以在不同的电脑上进行操作。从某种程度上来说,允许用户在各自的空间里修改和管理同一组数据可以促进团队协作。因为修改不再是单线进行(单线进行也就是必须一个一个进行),开发进度会进展迅速。此外,由于所有的工作都已版本化,也就不必担心由于错误的更改而影响软件质量—如果出现不正确的更改,只要撤销那一次更改操作即可。某些版本控制系统本身也是软件配置管理系统(SCM),这种系统经过精巧的设计,专门用来管理源代码树,并且具备许多与软件开发有关的特性—比如,对编程语言的支持,或者提供程序构建工具。不过Subversion并不是这样的系统。它是一个通用系统,可以管理任何类型的文件集。

Subversion 1.8中http客户端基于neon已经被移除,改用self。如果要支持http方式需要在安装svn前安装serf,安装serf推荐用serf-1.2.1,安装是./configure;serf-1.3.0安装是用scons(yum -y install scons)方式,安装serf-1.3.0后安装可能会报误,Google没找到解决方法,如下报错
checking for serf-2 library... no
checking for serf-1 library... no
checking was serf enabled... no

An appropriate version of serf could not be found, so libsvn_ra_serf
will not be built. If you want to build libsvn_ra_serf, please
install serf 1.2.1 or newer.

configure: error: Serf was explicitly enabled but an appropriate version was not found.

安装步骤:
(本文只基于LAMP一键安装包环境部署好之后进行)
1. 安装apr、apr-unit

复制代码代码如下:
cd /root/lamp/source
#wget http://archive.apache.org/dist/apr/apr-1.4.8.tar.gz #LAMP中已经下载
#wget http://archive.apache.org/dist/apr/apr-util-1.5.2.tar.gz
tar xzf apr-1.4.8.tar.gz
cd apr-1.4.8
./configure --prefix=/usr/local/apache
make && make install
cd ../
tar xzf apr-util-1.5.2.tar.gz
cd apr-util-1.5.2
./configure --prefix=/usr/local/apache
make && make install
cd ../

2. 安装serf-1.2.1

复制代码代码如下:
yum -y install expat-devel
wget http://serf.googlecode.com/files/serf-1.2.1.tar.bz2 #serf-1.2.1.zip是win版有问题
tar xjf serf-1.2.1.tar.bz2
cd serf-1.2.1
./configure --prefix=/usr/local/serf --with-apr=/usr/local/apache --with-apr-util=/usr/local/apache
make && make install
cd ..

3. 安装svn

复制代码代码如下:
tar xzf subversion-1.8.1.tar.gz
cd subversion-1.8.1
./get-deps.sh
./configure --prefix=/usr/local/subversion --with-apxs=/usr/local/apache/bin/apxs
--with-apr=/usr/local/apache --with-apr-util=/usr/local/apache --with-zlib
--with-openssl --enable-maintainer-mode --with-serf=/usr/local/serf --enable-mod-activation
make && make install
cd ..

4. 检查是否安装成功
安装成功会在/usr/local/apache/conf/httpd.conf自己加入下面2行

复制代码代码如下:
LoadMole dav_svn_mole /usr/local/subversion/libexec/mod_dav_svn.so
LoadMole authz_svn_mole /usr/local/subversion/libexec/mod_authz_svn.so
检查svn是否支持http方式:

复制代码代码如下:
# svn --version
svn, version 1.8.1 (r1503906)
compiled Aug 2 2013, 11:36:48 on x86_64-unknown-linux-gnu

Copyright (C) 2013 The Apache Software Foundation.
This software consists of contributions made by many people;
see the NOTICE file for more information.
Subversion is open source software, see http://subversion.apache.org/

The following repository access (RA) moles are available:

* ra_svn : Mole for accessing a repository using the svn network protocol.
- with Cyrus SASL authentication
- handles 'svn' scheme
* ra_local : Mole for accessing a repository on local disk.
- handles 'file' scheme
* ra_serf : Mole for accessing a repository via WebDAV protocol using serf.
- handles 'http' scheme
- handles 'https' scheme

Ⅲ Linux服务器下安装SVN,并添加SVN项目,自动更新项目文件到web目录

在Linux服务器上安装和配置SVN服务器并实现自动更新至web目录的步骤如下,适用于对Linux版本和SVN版本有一定了解的用户:

首先,需要通过yum命令安装subversion。确保在执行此步骤前,已安装了yum或同等包管理工具。

接着,运行svnadmin check命令检查SVN版本,确保使用的是与服务器兼容的版本。

然后,创建SVN版本库。选择一个适当地点进行创建,如/home/www/svn目录。使用svnadmin create命令生成版本库,如:svnadmin create /home/svn/newProjectName。此步骤将为新项目创建文件结构。

SVN目录结构包括以下几个关键部分:db(存储版本控制数据)、hooks(存放脚本文件)、locks(监控文件库访问状态)和conf(配置文件)。

注意停止SVN服务时,使用killall svnserve命令。

测试服务器时,执行svn checkout以确保项目能正常checkout。添加新文件进行验证。

进行本地SVN文件拉取操作。

实现自动同步到web目录的关键步骤是配置post-commit钩子脚本。在/home/svn/testHTML/hooks目录下创建post-commit文件,并使用文本编辑器如vi进行配置。确保添加的脚本具备执行权限。

在PC端使用SVN客户端时,配置的svn地址应与服务器上设置的目录一致。在不同环境下的教程中,项目文件名可能有变动,如从testHTML更改为testSVN1,但实际操作中应保持与服务器端一致。

阅读全文

与linuxsvn客户端安装配置相关的资料

热点内容
php新手找工作 浏览:908
javacmd路径 浏览:291
手机app怎么不能在安卓电视上用 浏览:564
缓解压力精神的中药 浏览:771
mavenforphp 浏览:544
单片机中什么叫字节地址 浏览:736
不要解压进行安装 浏览:137
一个好的算法要多少钱 浏览:771
微信共享文件夹多人同时使用 浏览:650
qq有什么服务器 浏览:352
linuxsvn客户端安装配置 浏览:398
如何让服务器不维护 浏览:495
安卓一键换机怎么样 浏览:206
红光灯珠解压 浏览:783
php股票api接口 浏览:661
程序员初学者买什么电脑 浏览:478
邮政储蓄银行app停用什么意思 浏览:415
电子文档加密多少钱 浏览:697
android按钮半透明 浏览:483
基于同态加密的隐私计算 浏览:966