CentOS 6.5安装SVN 客户端TortoiseSVN

2022-07-04 09:04:19 浏览数 (1)

TortoiseSVN简介

TortoiseSVN 是 Subversion 版本控制系统的一个免费开源客户端,可以超越时间的管理文件和目录。文件保存在中央版本库,除了能记住文件和目录的每次修改以外,版本库非常像普通的文件服务器。你可以将文件恢复到过去的版本,并且可以通过检查历史知道数据做了哪些修改,谁做的修改。这就是为什么许多人将 Subversion 和版本控制系统看作一种“时间机器”。

环境说明

系统版本:CentOS 6.5,内核(uname -r):2.6.32-431.el6.x86_64

安装命令:

yum install -y subversion

SVN客户端命令:

查看svn命令帮助:

svn help

查看子命令帮助:

svn checkout --help

checkout (co): Check out a working copy from a repository. usage: checkout URL[@REV]... [PATH]

  If specified, REV determines in which revision the URL is first   looked up.

  If PATH is omitted, the basename of the URL will be used as   the destination. If multiple URLs are given each will be checked   out into a sub-directory of PATH, with the name of the sub-directory   being the basename of the URL.

  If --force is used, unversioned obstructing paths in the working   copy destination do not automatically cause the check out to fail.   If the obstructing path is the same type (file or directory) as the   corresponding path in the repository it becomes versioned but its   contents are left 'as-is' in the working copy.  This means that an   obstructing directory's unversioned children may also obstruct and   become versioned.  For files, any content differences between the   obstruction and the repository are treated like a local modification   to the working copy.  All properties from the repository are applied   to the obstructing path.

  See also 'svn help update' for a list of possible characters   reporting the action taken.

Valid options:   -r [--revision] ARG      : ARG (some commands also take ARG1:ARG2 range)                             A revision argument can be one of:                                 NUMBER      revision number                                 '{' DATE '}' revision at start of the date                                 'HEAD'      latest in repository                                 'BASE'      base rev of item's working copy                                 'COMMITTED'  last commit at or before BASE                                 'PREV'      revision just before COMMITTED   -q [--quiet]            : print nothing, or only summary information   -N [--non-recursive]    : obsolete; try --depth=files or --depth=immediates   --depth ARG              : limit operation by depth ARG ('empty', 'files',                             'immediates', or 'infinity')   --force                  : force operation to run   --ignore-externals      : ignore externals definitions

Global options:   --username ARG          : specify a username ARG   --password ARG          : specify a password ARG   --no-auth-cache          : do not cache authentication tokens   --non-interactive        : do no interactive prompting   --trust-server-cert      : accept unknown SSL server certificates without                             prompting (but only with '--non-interactive')   --config-dir ARG        : read user configuration files from directory ARG   --config-option ARG      : set user configuration option in the format:                                 FILE:SECTION:OPTION=[VALUE]                             For example:                                 servers:global:http-library=serf

svn list --help

list (ls): List directory entries in the repository. usage: list [TARGET[@REV]...]

  List each TARGET file and the contents of each TARGET directory as   they exist in the repository.  If TARGET is a working copy path, the   corresponding repository URL will be used. If specified, REV determines   in which revision the target is first looked up.

  The default TARGET is '.', meaning the repository URL of the current   working directory.

  With --verbose, the following fields will be shown for each item:

    Revision number of the last commit     Author of the last commit     If locked, the letter 'O'.  (Use 'svn info URL' to see details)     Size (in bytes)     Date and time of the last commit

Valid options:   -r [--revision] ARG      : ARG (some commands also take ARG1:ARG2 range)                             A revision argument can be one of:                                 NUMBER      revision number                                 '{' DATE '}' revision at start of the date                                 'HEAD'      latest in repository                                 'BASE'      base rev of item's working copy                                 'COMMITTED'  last commit at or before BASE                                 'PREV'      revision just before COMMITTED   -v [--verbose]          : print extra information   -R [--recursive]        : descend recursively, same as --depth=infinity   --depth ARG              : limit operation by depth ARG ('empty', 'files',                             'immediates', or 'infinity')   --incremental            : give output suitable for concatenation   --xml                    : output in XML

Global options:   --username ARG          : specify a username ARG   --password ARG          : specify a password ARG   --no-auth-cache          : do not cache authentication tokens   --non-interactive        : do no interactive prompting   --trust-server-cert      : accept unknown SSL server certificates without                             prompting (but only with '--non-interactive')   --config-dir ARG        : read user configuration files from directory ARG   --config-option ARG      : set user configuration option in the format:                                 FILE:SECTION:OPTION=[VALUE]                             For example:                                 servers:global:http-library=serf

svn list使用示例

svn list svn://192.168.231.1/SVNHome

遇到连接超时的错误:

查看连接的IP上是否已经启动SVN服务,检查防火墙端口开放状态。

解决连通问题之后,会提示输入“root”用户的密码,如下图:

这里使用其它用户访问,直接回车就可以了,然后提示输入用户名,输入完成回车,

然后提示输入密码,输入完成回车,如果输入正确就可以看到类似的信息了。

svn checkout使用示例

先创建一个目录,例如:mkdir test

检出到test目录下

svn checkout svn://192.168.231.1/SVNHome ./test

由于之前已经选择保存密码了,所以这里不再需要验证,输出如下图:

Checked out revision 10.检出成功,去test目录下看看吧。

更新版本库

切换目录到之前检出的文件目录,然后执行命令:svn update

如果之前没有选择保存密码,则会提示输入检出时使用的用户的密码!

如果需要使用其它用户,则直接按回车,这样就会提示你输入用户名,输入用户名之后按回车,会提示输入密码,输入正确并且用户有权限的话,就会开始更新了。

0 人点赞