svn

本文详细介绍了Subversion(SVN)版本控制系统中版本仓库的配置步骤,包括配置svnserve.conf、passwd和authz文件的方法,以及如何进行版本库的基本操作如添加、更新、删除和查看日志等。同时,针对常见问题提供了有效的解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

参考博客

https://blog.51cto.com/13572654/2061661

https://blog.youkuaiyun.com/sm_wang/article/details/78656120

https://www.cnblogs.com/xulb597/archive/2012/07/18/2597311.html

https://www.cnblogs.com/liuxiaowei/p/8297268.html

一、修改版本仓库下的conf文件夹下的配置文件及各配置文件的作用

  • svnserve.conf    配置其他配置文件的作用
  • passwd文件  配置用户密码   用户名=密码
  • authz 文件    配置用户组和组权限

1、svnserve.conf    配置其他配置文件的作用
所有行都必须顶格

anon-access = none
auth-access = write
password-db = passwd
authz-db = authz

2、passwd文件  配置用户密码   用户名=密码

[/usrs]
lucifr = 123456

3、authz 文件    配置用户组和组权限

 [groups]
用户组名=用户名1,用户名2
[/]                                          //表示用户组名配置语句结束
@用户组名 = rw
* = r                                   // 所有的组都具有读权限和写权限

二、对版本库的操作指令

1、打开制定的服务器 (版本库的svn目录)

svnserve -d -r /home/svn

2、用如下命令查看svnserve是否已经运行

ps aux | grep svnserve

3、关闭服务器

killall svnserve

4、将版本库checkout到本地目录 (在本地目录生成仓库副本)

svn checkout svn://电脑lo的本地IP地址/仓库名 --username 用户名
例:  svn checkout svn://127.0.0.1/repository --username lucifr

三、对版本库的本地仓库副本的操作指令

以下指令都是在本地目录的仓库副本中执行  (/home/a123456/catkin_ws/src/repository)

1、向版本库中添加新的文件 或者 修改某个文件 (修改文件,也要执行下面两步)

svn add 文件名或目录                                 //把仓库副本中的文件添加的缓冲区
svn commit -m “本次操作的描述”  文件名或目录          // 把缓冲区中的文件添加的版本仓库
A表示 add

svn add *                         //对仓库下所有文件进行操作
svn commit -m “本次操作的描述” *

2、将仓库副本中的目录文件或者仓库本身 更新某个版本

svn update -r m 文件名或目录名
svn update           // 如果后面没有目录,默认将当前目录以及子目录下的所有文件都更新到最新版本。
svn update -r 200 file.cpp         //将 仓库副本 中的文件test.php还原到版本200
svn update -r 200                  //将 仓库副本 还原到版本200

3、查看仓库副本中 文件或者目录状态  (不是 版本仓库中文件或者目录状态)

svn status -v 文件名或目录
第一列显示工作版本号,第二和第三列显示最后一次修改的版本号和修改的用户名。

4、删除文件

svn delete file
svn ci -m '操作说明‘
D 表示 delete

5、比较差异

svn diff 文件名或目录名             //将修改的文件与基础版本比较
例如:svn diff file.cpp
svn diff -r m:n 文件名或目录名      //对版本m和版本n比较差异
例如:svn diff -r 200:201 test.php

6、查看仓库副本的文件的日志(显示这个文件的所有修改记录,及其版本号的变化)

svn log 文件名或目录名

7、仓库副本中的文件和目录列表 (不是 版本仓库中文件和目录列表 )

svn ls

8、查看 仓库副本及其文件的信息 (不是 版本仓库中文件文件的信息)

svn info 文件名或目录名   //查看
svn info              //查看仓库副本信息

9、删除锁

svn cleanup

四、问题

1、svn add file 时,显示

svn:  警告: W150002: “”已纳入版本控制
svn: E200009: 因为一些目标已经版本化,所以不能增加全部目标
svn: E200009: 此请求操作的目标非法

解决办法: svn add file --force      //强制add

2、查看仓库副本的URL

在仓库副本目录下   svn info

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值