目录
环境配置
基本语法
参数指令
SVN是一款基于C/S架构的版本控制系统,能够实现对产品项目的版本托管以及对源码库的高效管理。而掌握SVN中的一些命令参数,一定程度上可以使日常效率得到进一步提升。
环境配置
为在调用时更加便捷,通常会将SVN配置到环境变量中。查找svn.exe的所在路径(在TortoiseSVN/bin文件夹下),然后按 Win + R 调入运行(管理员) 并输入 cmd,接着输入以下指令:
#如果需要加入到系统变量则在Path前加入 /m 即可
setx Path "%Path%;svn.exe的所在路径"
基本语法
svn命令参数行提供了将版本管理功能集成到其他软件的机会,其使用语法如下:
svn [指令]
# 示例 : svn checkout https://192.168.107.118/pro
参数指令
指令 | 缩写 | 描述 |
checkout PATH | co | 用于将PATH路径上的文件检录到本地目录下 |
add FILE | \ | 将指定文件添加到版本库中 例子: #添加test.cpp到版本库中 svn add test.cpp #添加当前目录下所有文件至版本库中 svn add *.* |
help | \ | 显示svn参数命令行用法 |
commit -m “LogMessage“ PATH | ci | 将有改动的文件提交至版本库中 例子: Svn commit -m “提交的信息” test.cpp |
lock/unlock -m “LockMessage“ [--force] PATH | \ | 对文件加锁/解锁 例子: Svn lock -m “锁该文件” test.cpp Svn unlock test.cpp |
update -r m PATH | up | 更新当前目录及子目录下文件至最新版本 例子: #更新当前目录及子目录下所有文件至最新版本 Svn update #将test.cpp文件恢复到版本v145的状态 Svn update -r 145 test.cpp |
status -v PATH | st | 查看文件或目录的状态 其中符号含义如下: ?:不在svn版本库中 M:内容已被修改 C:存在冲突 A:已预加入到版本库 K:被锁定 例子: Svn status test.cpp #显示test.cpp的文件状态 Svn -v status test.cpp #附加显示test.cpp当前版本号、最后修改版本号、修改人 |
delete/remove PATH -m “DelMessage” | del\rm | 删除svn服务器中的文件或文件夹 例子: #即时在版本库中完成 Svn delete https://192.168.107.118/pro/test -m “删除test文件夹” #将本地目录下的test.cpp删除,并纳入到下个提交流程中 Svn delete test.cpp -m “删除test.cpp” |
log PATH | \ | 显示指定文件或文件夹下的所有修改记录包括版本号变化的记录日志 |
diff -r m:n PATH | diff | 比较版本m与版本n之间的差异。若只使用diff PATH,则默认比较当前被修改的版本与最后一次上传更新的版本之间的差异。 例子: #比较版本145和版本146之间的差异 Svn diff -r 145:146 test.cpp #比较当前修改的版本与最后一次更新上传的版本之间的差异 Svn diff test.cpp |
list PATH | ls | 显示PATH路径下版本库中的文件、目录列表 |
mkdir PATH/URL | \ | 创建本地目录文件夹,并纳入到下一阶段提交流程之中/创建svn远端文件夹,即刻同步到svn远端版本库中 例子: #创建TestFolder文件夹 Svn mkdir TestFolder #在远端创建TestFolder文件夹 Svn mkdir http://192.168.107.118/pro/TestFolder |
revert PATH | \ | 将当前目录或文件恢复到上一次最新版本 例子: #将test.cpp恢复至上一个最新版本 Svn revert test.cpp |
resolved PATH | \ | 移除当前文件或目录的冲突标记,并纳入到下个提交流程中 |
* 常用参数以红色标记
拓展资料:SVN指南手册 | SVN