Linux下SVN常用指令

1.将本地文件上传到 SVN 服务器标准流程

1.1步骤一:准备本地工作副本

通过 svn checkout 检出了一个工作副本(Working Copy),例如:

bash 复制代码
[srv01]:/home/tmp/design>svn checkout /your-svn-server/path/to/repo/trunk myproject  
eg:
[srv01]:/home/tmp/design>svn co svn://srv01/myproject

从名为srv01的 SVN 服务器上的 /myproject 仓库中,检出最新版本的代码到当前目录下。 这会在当前目录下生成一个名为 myproject 的本地工作副本目录。

1.2步骤二:复制要上传的文件/文件夹到工作副本中

假设你要上传的文件位于 /home/user/myfiles/ 目录下,复制要上传的文件/文件夹到工作副本中myproject (复制整个文件夹)

bash 复制代码
cp -r /home/user/myfiles/* myproject/
cp -r /home/user/myfiles/ myproject/

如果是单个文件:

bash 复制代码
cp  /home/user/myfile.txt myproject/

1.3步骤三:跳转到工作副本目录

bash 复制代码
cd myproject

1.4步骤四:将新文件加入版本控制(add)

SVN 不会自动跟踪未加入版本控制的文件。你需要对新增的文件或目录执行:

bash 复制代码
svn add myfile.txt

如果是整个文件夹:

bash 复制代码
svn add myfolder --force

--force 用于递归添加所有子文件和子目录。

1.5步骤五:查看状态(status)

确认哪些文件被添加或修改了:

bash 复制代码
svn status
svn st

你会看到类似这样的输出:

bash 复制代码
A       myfile.txt
A       myfolder/
A       myfolder/subfile.txt
A 表示已添加(Added)

1.6步骤六:提交更改(commit)

最后一步是将你的更改提交到 SVN 服务器:

bash 复制代码
svn ci -m "上传新文件和文件夹"

也可以指定具体文件提交:

bash 复制代码
svn ci -m "上传 myfile.txt" myfile.txt

2. 常用指令

01 将文件checkout到本地目录

bash 复制代码
svn checkout /your-svn-server/path/to/repo/trunk myproject

02 往版本库中添加新的文件

bash 复制代码
svn add myfile.txt

03 将改动的文件提交到版本库

bash 复制代码
svn ci -m "上传新文件和文件夹" flie

05 更新

bash 复制代码
svn up
svn update

06 查看文件或者目录状态

bash 复制代码
svn status
svn st            //简写

07 查看日志

bash 复制代码
svn log             //查看全部
svn log --limit 10  //查看最近10条

svn log path        //查看某个文件的所有修改记录,及其版本号的变化
eg:svn log test.v  //查看test.v文件的所有修改记录,及其版本号的变化

08 查看文件详细信息

09 删除 文件

bash 复制代码
svn del 1122.v

10 查看SVN路径

由于大部分软件的安装都是系统自动安装的,查看文件安装的所有路径(如:SVN版本控制软件)。Linux系统已经安装了SVN,但是不知道文件都安装在哪些地方、放在哪些文件夹里,可以用下面的命令。

1.查看所有的文件路径:
bash 复制代码
命令:
whereis svn
2.查询运行文件所在路径
bash 复制代码
命令:
which svn

11 查看svn版本

bash 复制代码
命令:
svn --version

12 SVN帮助

bash 复制代码
命令:
svn help
svn help ci
相关推荐
草莓熊Lotso38 分钟前
Linux 文件描述符与重定向实战:从原理到 minishell 实现
android·linux·运维·服务器·数据库·c++·人工智能
历程里程碑41 分钟前
Linux22 文件系统
linux·运维·c语言·开发语言·数据结构·c++·算法
wdfk_prog8 小时前
[Linux]学习笔记系列 -- [drivers][input]input
linux·笔记·学习
七夜zippoe9 小时前
CANN Runtime任务描述序列化与持久化源码深度解码
大数据·运维·服务器·cann
盟接之桥9 小时前
盟接之桥说制造:引流品 × 利润品,全球电商平台高效产品组合策略(供讨论)
大数据·linux·服务器·网络·人工智能·制造
忆~遂愿9 小时前
ops-cv 算子库深度解析:面向视觉任务的硬件优化与数据布局(NCHW/NHWC)策略
java·大数据·linux·人工智能
湘-枫叶情缘9 小时前
1990:种下那棵不落叶的树-第6集 圆明园的对话
linux·系统架构
Fcy64810 小时前
Linux下 进程(一)(冯诺依曼体系、操作系统、进程基本概念与基本操作)
linux·运维·服务器·进程
袁袁袁袁满10 小时前
Linux怎么查看最新下载的文件
linux·运维·服务器
代码游侠11 小时前
学习笔记——设备树基础
linux·运维·开发语言·单片机·算法