svn版本控制详细使用教程

合集下载

TortoiseSVN(版本控制系统)使用手册

TortoiseSVN(版本控制系统)使用手册
2.3.11
在将你的项目导入到版本库之前,你应该:删除所有不需要的文件(如:临时文件,编译器产生的文件等)组织好目录和子目录内的文件。
然后进入资源管理器,选择你的项目的顶层目录,鼠标右键选择TortoiseSVN->导入,如下图:
在如下对话框中,输入你的项目导入到版本库的URL。
导入信息里面输入的内容将作为提交日志。
注:默认的目标URL将会是你当前工作副本所处的源URL。你必须给你的分支/标记编辑一个新路径来取代。如果你忘记了你上一次使用的命名约定,可以用鼠标右键打开版本库浏览器来察看已经存在的版本库结构。
还需要选择复制到版本库的位置。在这里你有三个设置选项:
a)版本库中的最新版本
新分支直接从版本库中的最新版本里复制出来。不需要从你的工作副本中传输任何数据,这个分支的建立是非常快的。
这个图标表示当前文件夹下的某些文件或文件夹已经被计划从版本控制中删除,或是该文件夹下某个受控的文件丢失了。
加号告诉你有一个文件或是目录已经被计划加入版本控制。
这个图标表示文件或文件夹被版本控制忽略。
这个图标表示文件或文件夹没有被版本控制,操作后会覆盖之前的内容。
2.2
Subversion有许多特性,选项和华而不实的高级功能,但日常的工作中你只使用其中的一小部分,在此会介绍许多你在日常工作中常用的命令。
2.3.4
在未提交之前,你对前面做的操作反悔了,可以使用TortoiseTSVN->SVN还原来恢复
这时会弹出一个提示框,让你选择需要还原哪几个步骤,选好确定后即可以还原。如下图:
2.3.5
修改文件名,不能直接用Windows的重命名命令来操作,必须选中你要重命名的文件,然后右键TortoiseSVN->改名。如下图所示:

Subversion版本控制系统使用教程

Subversion版本控制系统使用教程

Subversion版本控制系统使用教程第一章:Subversion版本控制系统简介Subversion版本控制系统(以下简称SVN)是一种用于管理文件和目录的开源版本控制系统。

本章将介绍SVN的基本概念和优势。

1.1 SVN的基本概念SVN采用集中式版本控制系统的架构,有一个中央服务器用于保存文件和历史版本信息。

每个用户可以从中央服务器检出文件副本,并对文件进行修改。

修改后的文件可以提交到服务器,形成新的版本。

1.2 SVN的优势SVN相比其他版本控制系统具有以下优势:- 简单易用:SVN提供了直观的命令行和图形化界面,使得版本控制操作简单易学。

- 强大的版本管理功能:SVN可以对文件进行版本控制、差异比较和合并操作,方便多人协同开发和跟踪文件变更历史。

- 安全性:SVN提供了用户权限管理机制,可以对用户进行身份验证和授权,保护文件的安全性。

- 独立性:SVN支持离线工作,用户可以在没有网络连接的环境下进行版本控制操作,并在连接网络后与中央服务器同步。

第二章:SVN的安装和配置本章将介绍如何安装SVN,并进行基本的配置。

2.1 SVN的安装SVN可以在官方网站下载安装程序,提供了Windows、Linux 和Mac等各个平台的安装包。

根据操作系统类型选择对应的安装包,下载并按照向导进行安装。

2.2 SVN的配置配置SVN需要编辑配置文件。

主要的配置文件是"svnserve.conf",其中包含了服务器的相关设置,如监听端口、认证方式等。

另外,还需要创建用户认证文件"passwd"和访问权限文件"authz"。

第三章:SVN的基本操作本章将介绍SVN的基本操作,包括检出、提交、更新和差异比较。

3.1 检出使用SVN的第一步是从中央服务器检出文件副本,可以通过命令行或图形化界面完成。

检出时需要提供服务器地址和存储库路径,SVN会将指定路径下的文件下载到本地。

使用SVN来进行版本管理

使用SVN来进行版本管理

使用SVN来进行版本管理SVN(Subversion)是一种开源的版本控制系统,它可以用于管理和跟踪软件项目的版本变化。

在软件开发中,版本管理是非常重要的,它可以帮助团队协作,提高效率,减少代码冲突,并保持代码的稳定性。

本文将介绍如何使用SVN来进行版本管理。

首先,安装SVN服务器和客户端。

SVN服务器可以在本地搭建,也可以使用云服务提供商的SVN服务器,比如GitHub、Bitbucket等。

客户端可以选择TortoiseSVN、Eclipse等工具。

接下来,创建一个SVN仓库。

SVN仓库是存储代码的地方,可以包含一个或多个项目。

在服务器上创建一个空的文件夹作为SVN仓库,并使用SVN命令初始化仓库。

```svnadmin create /path/to/repo```然后,导入项目到SVN仓库。

在本地,将项目导出到一个空文件夹,并使用SVN命令将其导入到SVN仓库。

```svn import /path/to/project file:///path/to/repo/project -m "Initial import"```现在,项目已经导入到SVN仓库中了。

接着,团队成员可以通过SVN客户端从SVN仓库中将项目检出到本地。

在本地选择一个合适的文件夹,使用SVN命令进行检出。

```svn checkout file:///path/to/repo/project/path/to/local/project```这样,项目就被复制到本地了。

此时,团队成员可以开始在本地修改项目,然后将修改提交回SVN仓库。

在修改完代码后,通过SVN客户端可以查看文件的状态,比如检测到的修改、冲突等。

``````同时,如果团队成员在提交代码之前发现了其他人的修改,可以使用“svn update”命令将SVN仓库中最新的代码更新到本地。

```svn update /path/to/local/project```当多个团队成员同时修改同一个文件时,可能会发生代码冲突。

SVN使用教程总结

SVN使用教程总结

SVN使用教程总结SVN是一个版本控制系统,用于协同开发项目。

它能够跟踪和记录文件的改动,并确保团队成员之间的工作整合起来。

在本文中,我们将提供一个详细的SVN使用教程总结,帮助您快速上手和管理您的项目。

2.创建一个仓库:在SVN中,仓库是用来存放项目文件和历史记录的地方。

一般情况下,您需要选择一台服务器,然后在服务器上创建一个仓库。

使用以下命令来创建一个仓库:$ svnadmin create /path/to/repository3.导入项目文件:在创建仓库之后,您需要将项目文件导入到仓库中。

在项目的根目录下,使用以下命令导入项目文件:$ svn import /path/to/codebase file:///path/to/repository -m "Initial import"这将把项目文件导入到仓库中,并附带一条初始化的提交注释。

4. 检出项目:当仓库创建并且项目文件导入之后,您可以通过检出(checkout)来获取项目的最新副本。

使用以下命令来检出项目:$ svn co file:///path/to/repository /path/to/checkout这将把仓库中的项目文件检出到指定的目录中,使您能够开始对项目进行修改。

$ svn add /path/to/file添加文件会将其标记为待提交状态,而提交文件则会将它们的修改保存到仓库中。

6. 更新项目:在多人协同开发的情况下,可能会有其他团队成员对项目文件进行修改。

为了保持自己的副本和仓库中的最新版本一致,您需要定期更新(update)项目。

使用以下命令来更新项目:$ svn update7.查看日志:在SVN中,您可以查看每一次提交的详细历史记录。

使用以下命令来查看项目的提交日志:$ svn log8. 分支和合并:在开发过程中,您可能会创建分支(branch)来实现新的功能或修复错误。

使用以下命令来创建分支:$ svn copy /path/to/trunk /path/to/branch -m "Create branch"这将会在仓库中创建一个与主分支相同的副本,并附带一条创建分支的提交日志。

学习使用版本管理工具SVN的基本操作

学习使用版本管理工具SVN的基本操作

学习使用版本管理工具SVN的基本操作章节一:引言在软件开发和项目管理中,版本管理工具是一个不可或缺的组成部分。

版本管理工具可以帮助团队有效地协同工作、追踪变更,并确保代码库的稳定性和可追溯性。

SVN(Subversion)是一款流行且功能强大的开源版本控制系统。

本文将介绍SVN的基本操作,让读者可以轻松上手并充分利用这一工具。

章节二:版本库和工作副本SVN通过版本库来管理文件和目录的历史记录。

版本库可以存放在本地或远程服务器上,团队成员通过工作副本进行开发。

使用SVN,我们可以在工作副本上进行各种操作,并将变更提交到版本库中。

章节三:检出代码要开始使用SVN,首先需要从版本库中检出代码到本地。

检出是指将版本库中的指定目录或文件复制到本地,并创建一个工作副本。

通过检出代码,我们可以在本地进行开发和修改,并将变更提交回版本库。

章节四:提交变更在使用SVN进行开发时,我们会不断对代码进行修改和调整。

当我们认为代码已经达到一个稳定的状态并希望把变更保存到版本库中时,就可以进行提交操作。

SVN会将变更同步到版本库中,并为提交生成一个唯一的版本号。

章节五:更新工作副本在多人协同开发的环境中,可能会发生其他人已经对代码进行了修改,而我们的工作副本不再是最新版本的情况。

为了避免代码冲突并与最新代码保持同步,我们需要通过更新工作副本来获取最新的代码。

章节六:解决冲突当多个开发人员同时对同一个文件进行修改,并试图将修改提交到版本库时,可能会发生冲突。

SVN会自动检测并标记冲突的文件,但解决冲突需要人工干预。

在本节中,将介绍解决冲突的常用方法和技巧。

章节七:分支与合并分支和合并是团队协同开发中非常重要的功能。

通过创建分支,可以在不影响主线代码的情况下进行新功能的开发和测试。

而合并则可以将分支的变更合并回主线,确保代码的一致性。

SVN提供了简单且强大的分支与合并功能,本节将详细介绍使用方法。

章节八:回滚变更在开发过程中,有时我们会发现已经提交的变更存在问题,需要撤销或回滚。

svn用户操作手册

svn用户操作手册

svn用户操作手册SVN(Subversion)是一个版本控制系统,用于管理文件的版本和变更历史。

以下是SVN用户操作手册:1. 检出代码:打开控制台,输入“svn checkout [服务目录] [本地目录全路径] --username 用户名 --password 密码”。

其中,[服务目录]是你要检出的代码所在的SVN仓库地址,[本地目录全路径]是你要将代码检出到的本地路径。

2. 添加新文件:使用“svn add 文件名”命令将新文件添加到版本库中。

如果要添加多个文件,可以使用通配符“.扩展名”来批量添加,例如“svn add .txt”将添加所有扩展名为.txt的文件。

3. 提交修改:使用“svn commit -m 提交信息”命令将修改的代码提交到仓库中。

其中,“-m”参数后面跟着提交信息,简要描述你做了哪些修改。

4. 更新代码:使用“svn update”命令将当前目录以及子目录下的所有文件都更新到最新版本。

如果要更新特定文件,可以使用“svn update [文件路径]”命令。

5. 比较代码:使用“svn diff”命令比较当前文件与版本库中的文件差异。

如果要比较不同版本的差异,可以使用“svn diff -r [版本号] [文件路径]”命令。

6. 分支操作:创建分支使用“svn copy [源路径] [目标路径] -m 创建分支信息”。

其中,[源路径]是你要创建分支的分支或主线的位置,[目标路径]是分支的名称。

合并分支使用“svn merge [源分支路径] [目标分支路径]”。

其中,[源分支路径]是要合并的分支的路径,[目标分支路径]是合并的目标位置。

7. 查看历史记录:使用“svn log [文件或目录路径]”命令查看指定文件或目录的历史记录。

8. 标签操作:创建标签使用“svn copy [源路径] [目标路径] -m 创建标签信息”。

其中,[源路径]是你要创建标签的分支或主线的位置,[目标路径]是标签的名称。

SVN使用说明详解

SVN使用说明详解

SVN使用说明详解SVN(Subversion)是一种版本控制系统,用于管理和跟踪文件的变化。

它可以帮助团队成员协同开发,并提供了方便的版本控制和管理工具。

下面是使用SVN的详细说明:1.安装SVN2.创建版本库版本库是SVN用于存储文件和其变化的地方。

可以在服务器上创建版本库,也可以在本地创建。

使用以下命令在本地创建版本库:svnadmin create /path/to/repository3.创建项目目录结构在版本库中,可以创建不同的项目目录。

每个项目目录可以包含多个文件和子目录。

使用以下命令在版本库中创建一个项目目录:svn mkdir /path/to/repository/project_name4.导入文件在版本库中导入文件,可以使用以下命令:svn import /path/to/local/folderfile:///path/to/repository/project_name -m "Initial import"5.更新代码在工作目录中更新代码,可以使用以下命令:svn update6.添加文件将新文件添加到版本库中,可以使用以下命令:svn add filename7.提交更改提交更改将文件更新到版本库中,可以使用以下命令:8.查看日志可以使用以下命令查看版本库中的提交记录:svn log9.检查文件状态可以使用以下命令检查文件在工作目录中的状态:svn status10.比较文件差异可以使用以下命令比较本地文件和版本库中文件的差异:svn diff filename11.合并分支如果有多个分支,可以使用以下命令将一个分支合并到另一个分支:svn merge source_branch_url destination_branch_url12.解决冲突svn resolve filename以上是SVN的基本操作说明,但SVN还有许多其他功能和选项,可以根据具体需要进行进一步学习和使用。

svn版本控制详细使用教程

svn版本控制详细使用教程

SVN---源代码版本控制CVS、RSSSVN安装现在我们svn软件已经安装好了,该软件是管理我们程序源码。

现在需要把每个仓库相关的硬件、软件都给创建出来。

◆仓库已经创建好需要给仓库运输粮食,就是我们自己的源程序代码需要通过仓库管理。

各个地方供应商和齐齐哈尔粮食仓库建立联系。

程序员客户端要与svn建立联系。

通过专门软件建立联系。

[小乌龟]软件◆程序员客户端与svn版本库建立联系(一)右键-----》svnCheckout(二)(三)该步骤说明客户端还没有找到仓库服务器。

说明仓库还没有挂牌运行。

svn仓库运行会占用3690端口号码(> netstat -ano)占用的进程号码是5400通过“任务管理器”查看5400是否是svn服务本地代码上传到svn服务器里边。

右键---》svn---》add右键---》commit(提交)开启匿名用户权限在此配置文件可以开启匿名用户权限操作。

svn使用:1)svn服务器端安装2)创建各个小的仓库(shop cms book)svnadmin create d:/svnServer/myapp/shop、cms、book3)仓库挂牌营业svnserve -d -r 仓库目录地址4)各个小地方的供应商与仓库建立联系(安装小乌龟软件)使用小乌龟软件右键------->svnCheckout(检出)5)使用svn,建立源码文件上传到svn服务器里边右键------》svn-----》add右键------》commit我现在挂牌营业的版本库是shop。

实际情况是我创建了3个版本库(shop cms book) 我们现在要求3个版本库都挂牌营业。

svnserve -d -r d:/svnServer/myapp/shopsvnserve -d -r d:/svnServer/myapp/cmssvnserve -d -r d:/svnServer/myapp/book【同时运行多个版本库】现在我的svn主机名localhost是指引到d:/svnServer/myapp/shop下边那如果我们svn版本库挂牌营业的目录走到d:/svnServer/myapp那么localhost就指引到myapp这个地方现在lihao与svn服务器建立联系,需要使用book仓库你得snv服务器主机名就可以这样写:svn://localhost/book/conf/svnserve.conf文件创建多个svn版本库◆挂牌启动svn版本库服务,其目录路径是各个版本库的上级目录◆具体客户端与svn建立联系,其主机名是svn:/localhost/book(仓库名字) ◆多级目录版本库使用,原理与单级目录一致多级目录下边小的版本库需要分别创建出来svnadmin createcheckout的时候把主机名写正确svn://localhost/目录/目录/版本库名称设置环境变量后,重启启动dos命令行如果还不可以使用svnadmin【版本还原】每个svn控制源码文件,都可以还原为之前的某个具体版本(只要改文件有进行commit版本设置)在进行源码版本还原的时候可以还原为之前的具体版本如果当前版本号码是之前的某个版本,系统也允许我们还原为之后的具体版本。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

SVN---源代码版本控制
CVS、RSS
SVN安装
现在我们svn软件已经安装好了,该软件是管理我们程序源码。

svn软件已经安装好了
齐齐哈尔
具体什么地方造仓库
要造几个仓库
仓库都是装什么的
现在需要把每个仓库相关的硬件、软件都给创建出来。

◆仓库已经创建好
需要给仓库运输粮食,就是我们自己的源程序代码需要通过仓库管理。

各个地方供应商和齐齐哈尔粮食仓库建立联系。

程序员客户端要与svn建立联系。

通过专门软件建立联系。

[小乌龟]软件
◆程序员客户端与svn版本库建立联系
(一)右键-----》svnCheckout
(二)
(三)
该步骤说明客户端还没有找到仓库服务器。

说明仓库还没有挂牌运行。

svn仓库运行会占用3690端口号码(> netstat -ano)
占用的进程号码是5400
通过“任务管理器”查看5400是否是svn服务
本地代码上传到svn服务器里边。

右键---》svn---》add
右键---》commit(提交)
开启匿名用户权限
在此配置文件可以开启匿名用户权限操作。

svn使用:
1)svn服务器端安装
2)创建各个小的仓库(shop cms book)
svnadmin create d:/svnServer/myapp/shop、cms、book
3)仓库挂牌营业
svnserve -d -r 仓库目录地址
4)各个小地方的供应商与仓库建立联系(安装小乌龟软件)
使用小乌龟软件
右键------->svnCheckout(检出)
5)使用svn,建立源码文件上传到svn服务器里边
右键------》svn-----》add
右键------》commit
我现在挂牌营业的版本库是shop。

实际情况是我创建了3个版本库(shop cms book) 我们现在要求3个版本库都挂牌营业。

svnserve -d -r d:/svnServer/myapp/shop
svnserve -d -r d:/svnServer/myapp/cms
svnserve -d -r d:/svnServer/myapp/book
【同时运行多个版本库】
现在我的svn主机名localhost是指引到d:/svnServer/myapp/shop下边那如果我们svn版本库挂牌营业的目录走到d:/svnServer/myapp
那么localhost就指引到myapp这个地方
现在lihao与svn服务器建立联系,需要使用book仓库
你得snv服务器主机名就可以这样写:svn://localhost/book
/conf/svnserve.conf文件
创建多个svn版本库
◆挂牌启动svn版本库服务,其目录路径是各个版本库的上级目录
◆具体客户端与svn建立联系,其主机名是svn:/localhost/book(仓库名字) ◆多级目录版本库使用,原理与单级目录一致
多级目录下边小的版本库需要分别创建出来svnadmin create
checkout的时候把主机名写正确svn://localhost/目录/目录/版本库名称
设置环境变量后,重启启动dos命令行如果还不可以使用svnadmin
【版本还原】
每个svn控制源码文件,都可以还原为之前的某个具体版本(只要改文件有进行commit版本设置)
在进行源码版本还原的时候
可以还原为之前的具体版本
如果当前版本号码是之前的某个版本,系统也允许我们还原为之后的具体版本。

只要在svn服务器里边存在的版本号码,我们可以任意切换。

我们对源文件该名字的时候,需要考虑清楚,旧名字对应的版本号码就不见了
给文件改名字总结:
◆旧文件对应的版本号码就其本身自己的
◆新名字文件对应的版本号码也是其本身自己。

◆给文件改名字建议:新创建出来一个文件,名字就是新名字,把旧文件内容
复制一份过来就好。

这时在系统有存在两个文件(新和旧文件)
【svn主机名更换】
我们使用“小乌龟”客户端
该客户端并不能直接修改主机名。

我们可以让客户端更改svn版本库
1.删除当前客户端里边的隐藏文件.svn
如果客户端的项目目录里边有许多文件夹目录,那么每个文件夹里边的svn也需要删除.
2.右键-----》checkout重新建立版本库
我们给svn服务器添加信息的文件、目录
文件:
右键----》add && commit
目录,目录里边有文件
右键(目录)----add && commit
【对文件提交操作commit】
1.可以对单个文件进行修改,右键----》commit
2.我们可以在空白处点击右键------》commit,这时候系统会自动把已经修改的
文件给我们赛选出来供commit上传。

3.在空白处右键-----》commit,也会把没有版本号的文件给我们选择上,让我
们commit操作,这时候会把add和commit操作合并为一个commit操作4.我们在空白处右键------》commit,会把修改的文件和新创建的文件都给我
们列出来,供我们commit操作
【svn可以屏蔽某个文件上传或屏蔽某个系列的文件上传】
关于svn上传禁止设置
1.对单独文件进行设置
2.对一系列文件进行设置(后缀名都是一样的)
3.还可以对文件解禁,让其恢复自由身,继续给svn上传【冲突处理】
团队的每个成员9:00来公司上班,做的第一件事情就是update,把svn版本库的最新代码更新到自己本机,再开始一天的工作。

(一)两个人同时操作一个文件,但是他们操作的是不同行的代码。

第二个提交的成员,需要先进行update操作(svn已经把前后两个人的修改合并为一个文件),才可以commit重新上传
(二)两个人修改文件相同地方的代码。

相同行、相同地方
后修改的成员需要做”update”操作,会给有冲突的文件产生三个文件(mine、旧版本文件、新版本文件),这个三个文件知道意思后需要都删除
我们程序源码在产生冲突的地方会显示“======== <<<<<< >>>>>>
mine 新版本号码”等信息,后修改程序员只需把这些没有用的信息删除,把两个人的修改调整好(兼容好)重新提交到服务器。

【多个用户使用svn】
多用户使用svn版本库
1.修改文件conf/svnserve.conf
开启passwd 和authz功能
2.在passwd里边设置用户名和密码
3.在authz里边给具体用户分配权限
4.只开启passwd,没有开启authz,这样登录的时候要求输入用户名和密
码,权限有可读、可写。

5.我们的用户可以进行分组,给每个分组设置具体权限
【设置svn变成系统的服务】
win7同学对以上命令可以这样执行:
启动svn,new start svnnewed内容写进一个批处理.bat文件
给服务器创建svn服务
1.使用指令sc create svnd binPath= “d:/svn Server/server/bin/svnserve.exe
-r d:/svnServer/myapp --service” start= auto创建服务
2.开启服务(通过计算机管理自行开启服务)
3.把服务删除sc delete 服务名称
【svn使用真实场景模拟】
1.用户1给svn版本库提交文件computer.php
2.用户1通知系统管理员(可以通过邮件通知),有文件需要被上传到linux服务

3.系统管理员到svn去update,把最新的程序文件下载到本地
4.系统管理员把需要上传的文件“复制”到linux服务器就ok了。

总结:
1.svn服务器软件安装
2.创建svn仓库svnadmin create
3.svn仓库挂牌使用svnserve -d -r xxxxx
4.多个仓库同时挂牌使用,svnserve -d -r 仓库地址是多个仓库的上级
目录地址
checkout 的时候,主机名:svn://localhost/目录/目录/分级仓库名字
5.禁止某些文件上传到svn
6.文件还原,文件各个版本可以随意切换
7.每次写程序之前最好使用update,把系统的程序文件更新
8.程序代码修改完毕后执行commit,同时会创建版本号码,一般1个小时
左右执行一次commit操作或有大的改动的时候立即commit操作
9.可以设置多用户使用svn、可以设置用户名和密码,还有读、写权限
10.版本冲突(解决:update操作,调整代码就可以上传)
11.把svn设置为开机自动启动服务
作业:
1.我们每个同学都可以创建svn版本库(挂牌使用)
2.同学自己建立分组,有小组长和组员
小组长负责搭建svn服务版本库,组员连接小组长的版本库,大家一起开发同一个项目。

具体程序项目自己选(lib/controller
model)。

相关文档
最新文档