文件版本管理工具SVN

article/2025/10/23 5:51:41

目录

1 适用对象

2 安装

3 使用

3.1 单机版

3.1.1 建立版本库

3.1.2 将文件或文件夹放入库中

3.1.3 Checkout(导出)文件

3.1.4 Export(导出)文件

3.1.5 Commit(提交)文件

3.1.6 Update(更新)文件

3.1.7 对文件执行branch或tag操作

3.1.8 控制不同类型的文件

3.1.9 修改已经提交的log(日志)

3.2 多机版

3.2.1 安装示例

3.2.2 创建库示例

3.2.3 用户管理

4 库迁移

4.1 单机版库迁移

4.2 多机版库迁移


1 适用对象

在没有版本管理工具之前,多次编辑同一个文件并且想保存所有的更改,一般的方法是给文件以当前日期或者序号命名,如下所示,

第一次编辑

abc_20210101.txt或者abc_1.txt

第二次编辑

abc_20210102.txt或者abc_2.txt

第三次编辑

abc_20210103.txt或者abc_3.txt

有了版本管理工具之后,就可以做到不改动文件名而且能够保存每次的更改。

SVN是一款方便易用的文件版本管理工具,虽然跟如日中天的git工具(深受程序员青睐)相比逊色不少,但对于普通办公人员来说前者更适用,可以对任何类型的文件做版本管理,基本满足所有的使用场景。

2 安装

官网下载或者百度网盘下载(https://pan.baidu.com/s/1yet3If-5l4wQNLxPsKQ24g

提取码:o2g2 )安装包,双击安装即可。支持Windows 10、8、7。

安装成功之后,在系统桌面空白处右击鼠标会发现多了两个选择项,如下图所示,

3 使用

3.1 单机版

单台电脑单人操作,只需要安装TortoiseSVN。

3.1.1 建立版本库

创建一个空文件夹,进入文件夹,单击鼠标右键- >TortoiseSVN -> Creat Repository here,在弹出的窗口中点击“Create folder struct”,之后选择“确定”和“OK”即建立了一个版本库(如下图该库的访问路径为file:///G:/111/test)。单击鼠标右键->TortoiseSVN -> Repo-browser会自动弹出版本库的路径及相关内容。

SVN三个文件夹的理解:

trunk(主干)一般存放会经常被修改的文件。

tag(标签)可以理解为里程碑,凡是放在tag里的文件都不变了,当trunk里面的文件被认为是稳定的时候就可以备份到tag。

branches(分支),有的项目过于庞大,可以分成多个分支,每个模块是一个分支,待每个模块的文件开发完成之后再合并到主干上。

实际使用时可以只用到trunk,当然如果能利用好tag和branches的优点,那么就能更好的维护项目文件。

创建的版本库是一个空的仓库,需要把被管理的文件或文件夹放入其中。

3.1.2 将文件或文件夹放入库中

比如G:\111\projectA下有三个文件,a.txt,b.txt,c.txt,a.txt的内容为this is a.txt,b.txt的内容为this is b.txt,c.txt的内容为this is c.txt。

将G:\111\projectA放入库的trunk下,选中trunk(参考建立版本库章节的第二张图) -> 单击鼠标右键 -> Add folder… ->选中G:\111\projectA -> 确定,此时G:\111\projectA下所有文件都纳入了版本管理之中。

3.1.3 Checkout(导出)文件

新建空文件夹(比如G:\111\pA),将库中trunk上的文件下载到该文件夹。进入G:\111\pA,单击鼠标右键 -> SVN Checkout -> 选择指定的版本库(比如file:///G:/111/test),就可以把所有内容全部导出,另外还会生成一个.svn的文件夹,就是通过该文件夹跟版本库关联,以后就可以在pA文件夹下修改文件并提交到版本库。

3.1.4 Export(导出)文件

该功能与该Checkout类似,可将指定版本号的文件导出到指定的文件夹,若文件夹不存在则创建该文件夹,不会生成.svn的文件夹,所以不受SVN的版本管理,体积更小方便压缩传输。

3.1.5 Commit(提交)文件

在Checkout之后,如果文件有修改则需要commit才能同步到版本库中,比如在G:\111\pA文件夹,向a.txt追加一行内容“I am the first file”,同时增加一个文件d.txt并添加内容“this is d.txt”。进入文件夹->单击鼠标右键 -> SVN Commit -> 选择改动过的文件->写入改动日志(log)->OK,如下图所示,此时即可将改动保存到版本库中。

3.1.6 Update(更新)文件

在多人协作的项目中,每个人对文件的修改和Commit时间不一样,为了使手中的文件处于最新版本,在每次修改之前需要及时update。进入文件夹->单击鼠标右键 -> SVN Update。如果你手中的文件已经处于最新版本,此时你执行update操作则不产生任何效果。如果你修改了部分文件的内容,并且在此期间其他人在你未知的情况下Commit了文件(导致版本号增加),此时你执行update会报”conflict”,这时需要找出文件内容的差异手动合并,再Commit。

3.1.7 对文件执行branch或tag操作

有时候可能需要将一个功能完整的版本留作备份(tag),或者用于开发其他新增的功能(branch,待该功能稳定之后再合并到trunk中)。进入文件夹->单击鼠标右键 ->TortoiseSVN->Branch/tag...->填写”To path”的值,比如/tags/revision_3(对版本3打tag,由下图中的“Specific revision in reposipory”)->OK,即可在版本库tags文件夹下创建xxx文件夹并且其内容与指定版本的内容一样。

3.1.8 控制不同类型的文件

默认情况下SVN不会对某些类型的文件做版本管理,需要用户设置才生效,

比如刚建立的版本库不会对.so、.a文件进行归档,需要用户设置才生效,比如要将文件名后缀为so的文件纳入版本管理,则做如下操作,进入文件夹->单击鼠标右键 -> TortoiseSVN -> General -> Subversion -> Global ignore pattern -> 删去”*.so.[0-9]*”->确定。

3.1.9 修改已经提交的log(日志

某些情况下可能需要更改以前版本的log,默认情况下直接修改会报错,

此时在版本库目录的hooks目录下创建空文件pre-revprop-change.bat即可。

进入文件夹->单击鼠标右键 ->TortoiseSVN -> Show log -> 选定Revision -> 右键单击 -> Edit log message->输入内容->确定。

3.2 多机版

上述说明了单台电脑操作版本管理软件,现在说明在多人办公环境中的使用方法。

如下图,跟单机版一样,电脑B、C、D需要安装TortoiseSVN,电脑A除了安装TortoiseSVN还要安装VisualSVN-Server,可以从官网下载或百度网盘下载。

(https://pan.baidu.com/s/1R_eb62cgg__kNGCVBlduzA 提取码:t3jc)

3.2.1 安装示例

下图中的Repositories:存放所有版本库的路径。

3.2.2 创建库示例

进入上图中Repositories指定的文件夹->单击鼠标右键->Cteate New repository->Regular FSFS repository->填入库文件名字(如ExampleRepo)->Single-project repository->Nobody has access->Create->Finish,此时弹出库的URL,通过VisualSVN Server操作界面右键也可获取库的URL。

3.2.3 用户管理

Repositories->ExampleRepo->Properties->Security,如下图,给用户添加用户testUser并给予读写版本库的权限。

4 库迁移

4.1 单机版库迁移

直接将整个库拷贝至其他机器即可。

4.2 多机版库迁移

可以参考官网说明,或者按照如下操作,

Repositories->Import Existing Repository->Copy repository from another location->输入库完整路径->命名库名字->Import。

正常情况下不会出现错误即可导入成功。导入成功如果遇到如下访问错误,需要清除软件缓存数据再次访问即能成功,TortoiseSVN->Settings->Saved Data->所有数据Clear。

 


http://chatgpt.dhexx.cn/article/TGlDmIki.shtml

相关文章

eclipse配置php开发环境

注意:使用PHPStorm开发简单许多,如果你坚持使用eclipse的话就往下面看,否者直接看文章最后怎么在PHPStorm上配置php的开发环境即可! 一、下载安装php插件 在help里面选择Install New Software 我已经安装了就不做具体演示了php…

PHPEclipse搭建PHP开发环境

转自: http://blog.csdn.net/gxiangzi/article/details/6547564 1.PHPEclipse是Eclipse的一个用于开发PHP的插件。官网下载地址:http://sourceforge.net/projects/phpeclipse/ 下载解压后,将features和plugins文件夹的内容拷贝至eclipse安装…

如何在vscode配置php开发环境

1.下载xampp 在网站https://www.apachefriends.org/zh_cn/index.html下载xampp,安装把php.exe所在文件夹添加进系统变量path中在cmd输入php -v可以看到是否成功,成功会显示版本信息。 2.下载插件 去 https://xdebug.org/download.php下载插件&#…

Mac下快速搭建PHP开发环境

最近做了一个后端的项目,是用PHPMySQLNginx做的,所以把搭建环境的方法简单总结一下。 备注: 物料:Apache/NginxPHPMySQLMAMPMac OS 10.12.1 自带Apache,Nginx和PHP 1.运行Apache 查看Apache版本,在终端…

PHP开发环境的搭建——PHPStorm的安装使用

在win10系统搭建PHP的开发环境。 安装XAMPP XAMPP(ApacheMySQLPHPPERL)是一个功能强大的建站集成软件包。可以在window、Linux、Mac系统上安装使用 windows系统的安装 下载地址:https://www.apachefriends.org/index.html 安装好后&#…

idea配置php开发环境以及配置debug

idea集成php开发环境 1.idea集成php开发环境2.php集成DeBug调试功能 因为我本身是学java的,但是学校开发了php课程,我主用idea,又不想新下载开发工具,所以就使用idea集成php开发环境,其实idea工具还是很强大的&#xf…

Windows 10搭建PHP开发环境

一、下载所需软件 1.Apache下载地址: http://httpd.apache.org/download.cgi 点击binaries、知道进入到以下目录 我这下的是: httpd-2.2.25-win32-x86-no_ssl.msi 这个版本。 2.PHP下载地址: http://windows.php.net/download/#php-5.5 3.MySQL下载安装可参考我这篇文章: http…

PHPstudy+Vscode配置php开发环境

目录 前期准备PHPstudy搭建注意点.1注意点.2注意点.3 Vscode搭建注意点.1注意点.2 搭建结果如图示补充注意点.1输出带路径?(不算错误) HexoGithub搭建链接和问题(附win11右键菜单改win10代码) 这两天一直在用PHPstudyV…

Windows10搭建PHP开发环境

1. 安装Apache2.4 Step1. 下载Apache Http Server 2.4 下载地址:Download Apache Http Server 点击红框中的链接,选择ApacheHaus进入下载界面,选择合适的Apache版本下载。 Step2. 安装与配置Apache Http Server 2.4 解压下载到的压缩包…

PHP开发环境的配置

PHP开发环境的配置 一、开发工具的选择 ​ php开发的代码编辑器有很多种,使用频率比较高的代码编辑器是Phpstorm和Vscode。这两种编辑器的区别就是Phpstorm的插件比较齐全,基本上不需要自己动手去安装插件,这样缺点就是启动和加载项目文件比…

VScode+PHPstudy配置PHP开发环境详解

这篇文章主要介绍了VScodePHPstudy配置PHP开发环境的步骤,整理了官方以及优秀第三方的内容,对于学习和工作有一定借鉴意义。 准备安装的软件:VScode和PHPstudy。 链接:https://pan.baidu.com/s/1T2uuXhE-2yK2DZwCNXXPsg 提取码&am…

Mac安装PHP开发环境

MacOS下安装homebrew包管理器 一、安装PHP #搜索PHP,会搜索出PHP相关的资源,然后根据自己需求选择安装 $ brew search php #安装PHP,不指定PHP版本时,默认安装最新版本 $ brew install php程序会自动安装,安装完成后…

如何在VSCode配置PHP开发环境(详细版)

这篇博文是当初笔者上课需要配置XAMPP,整理出来配置方法,错漏之处没有认真核对,给造成麻烦的同学道个歉。 以下有两场修正之处。第一处,XAMPP国内下载地址改成了XAMPP中文网最新版本下载链接,给之前误下p2p的同学再次道…

Windows上搭建PHP开发环境

Windows上搭建PHP开发环境 前言运行环境&安装软件数据库 mysql 安装服务器 nginx 安装PHP 安装redis 配置phpMyAdmin 安装PhpStorm 安装结语 前言 作为一个不太全面发展的客户端程序员,基本没怎么写过服务器,就是以前闲暇时候写过点php和go&#xf…

php开发环境

本人用的是phpstudy,很方便 开启三个功能 FTP Sql数据库 以及最重要的Apach 同时Apach能配置本机的虚拟主机,以及访问的项目路径,本人觉得还是很方便的 管理数据库的工具,个人用的是Navicat 至于破解,可以网上找找看…

搭建PHP开发环境(Apache+PHP+MySQL)

简介:总结在Windows环境搭建PHP开发环境(ApachePHPMySQL) 安装Apache 1、下载Apache,地址:http://www.apachelounge.com/download/,如下图: 2、解压压缩包,最好放到磁盘根目录&…

PHP笔记(一):开发环境配置

本文记录如何在Windows系统配置简单的PHP开发环境。 目录 PHP环境部署下载安装XAMPP配置XAMPP Vscode 配置PHP配置PHP 可执行文件安装插件 PHP代码示例 PHP环境部署 PHP适用于Web应用程序开发,这里介绍使用XAMPP来配置开发环境,它是一个免费的Apache发行…

Linux中的insmod和mknod命令

一、insmod命令详解 insmod命令用于将给定的模块加载到内核中。Linux有许多功能是通过模块的方式,在需要时才载入kernel。如此可使kernel较为精简,进而提高效率,以及保有较大的弹性。这类可载入的模块,通常是设备驱动程序。 注意…

mknod命令的使用

1、mknod命令 在Linux系统下,mknod命令可用于系统下字符设备文件和块设备文件的创建。 (1)命令语法 mknod(选项)(参数) (2)常用选项说明 -Z:设置安全的上下文…

mknod创建一个设备节点

mknod是make node的缩写,就是创建一个节点(设备文件又叫做设备节点)。在linux系统中,一个节点代表一个文件,创建一个文件最主要的根本工作就是分配一个新的节点(注意,这是存在于磁盘上的节点&am…