现在的位置: 首页 > 综合 > 正文

SVN用法详解

2017年10月03日 ⁄ 综合 ⁄ 共 2969字 ⁄ 字号 评论关闭

1.SVN基础知识

1.1 checkout

SVN checkout 是从服务器取出数据,并在数据上添加控制。

1.2 修改配置文件

修改SVN的配置文件,如用户名,密码后不用重启服务器。

1.3 Export

Export仅仅是是导出数据,是平常的格式,没有控制。

1.4 权限配置

SVN1.4权限配置:[/]根目录,[/HR]根目录下HR文件夹,SVN的权限是有了子目录的权限,却不一定有父目录的权限,这次的配置方法跟以前的版本可能不同

1.5 import

从本地往服务器import数据,如果是导入一个文件夹如A,且A文件夹下有数据,则会导入A文件夹下的数据,而不是导入A文件夹,所以如果要导入一个Jbuilder的项目文件,需要先用一个文件夹把项目多包含一层文件夹后再导入,才能导入项目文件。

1.6 如何删除SVN服务器上的文件:

在电脑任意地方右键单击:如下图

clip_image002

单击“Repo-Browser”,会出现下图,写出服务器的URL

clip_image004

然后出现下图:

clip_image006

通过右键菜单即可以做删除了

clip_image008

1.7 如何向SVN服务器导入数据

选中要导入的文件夹,点击“Import”

clip_image010

clip_image012

或者单击下拉框:

clip_image014

或者点击右侧的“…”小按钮:出现如下图

clip_image016

clip_image018

在服务器URL后写一个要存放上传数据的文件夹(这个文件夹会自动创建),否则会直接在根目录下创建,然后点击OK,出现如下界面,少等一会

clip_image020

添加完成

clip_image022

2.Jbuilder2006中SVN应用

2.1 如何SVN服务器中下载项目

clip_image024

clip_image026

clip_image028

clip_image030

clip_image032

clip_image034

clip_image036

从没有安装SVN的机器上下载SVN服务器上的文件

clip_image038

选择Subversion后,点击OK按钮:

clip_image040

把项目上传到SVN服务器上去

clip_image042

clip_image044

3. SVN服务启动

3.1 启动一个SVN服务:

在任意一个目录下运行svnserve -d -r E:\svn\repository, 我们的服务器程序就已经启动了。注意不要关闭命令行窗口,关闭窗口也会把svnserve停止

建立版本库(Repository)

3.2 创建一个版本库(Repository)

运行Subversion服务器需要首先要建立一个版本库(Repository),可以看作服务器上存放数据的数据库,在安装了Subversion服务器之后,可以直接运行,如:

3.2.1 DOS命令符创建:
在任意个命令符下Svnadmin create E:\svndemo\repository,就会在目录E:\svndemo\repository下创建一个版本库。

3.2.2 TortoiseSVN图形化创建:
在目录E:\svndemo\repository下"右键->TortoiseSVN->Create Repository here...“, 然后可以选择版本库模式, 这里使用默认即可, 然后就创建了一系列目录和文件。

3.2.3 取出版本库到一个工作拷贝:
来到任意空目录下,在本例中是E:\svndemo\wc1,运行右键->Checkout,在URL of repository中输入svn://localhost/,这样我们就得到了一份工作拷贝。
在工作拷贝中作出修改并提交:
打开readme.txt,作出修改,然后右键->Commit...,这样我们就把修改提交到了版本库,我们可以运行。

3.2.4 察看所作的修改:
readme.txt上右键->TortoiseSVN->Show Log,这样我们就可以看到我们对这个文件所有的提交。在版本1上右键->Compare with working copy,我们可以比较工作拷贝的文件和版本1的区别。

4.配置用户和权限

4.1修改svnserve.conf:
来到E:\svndemo\repository\conf目录,
# [general]
# password-db = passwd
改为:
[general]
password-db = passwd 然后修改同目录的passwd文件,去掉下面三行的注释:
# [users]
# harry = harryssecret
# sally = sallyssecret
最后变成:
[users]
harry = harryssecret
sally = sallyssecret

注意:在修改这些“#”符号时,确保其前面没有空格,如passwrod前没有空格,是这一行的开始单词

4.2 SVN和客户端连接成功的界面
clip_image046

如果有错误则:

clip_image048

不能往版本库中加数据,多数原因是权限不够!可能没有“写”的权限,如下图:

clip_image050

4.3 SVN中详细权限设置

先在passwd文件中添加用户名和密码,然后在authz文件中添加用户组,把用户添加到组中去,然后为组赋权限,一个用户可以是一个组,也可以是多个用户一组.

image

------------------------------------------------passwd文件

image
----------------------------authz文件

5. Eclipse下SVN应用

5.1安装Eclipse SVN plugin(Subclipse)

Eclipse的使用者可以通过Eclipse的插件自动下载和更新功能来安装这个插件,在Eclipse的菜单中选择Help->Software Updates->Find and Install-> Search for new features to install ->New Remote Site。URL中就输入[url]http://subclipse.tigris.org/update[/url],Eclipse就会自已安装上了.

clip_image056

clip_image058

clip_image060

点击finish可以获得SVN的插件和文档。

5.2 从SVN库中取数据

clip_image062

点击”下一步”

clip_image064

如果还没有连接到一个资源库或没有连接到自己可用的资源库,请用”创建新的资源库位置”,否则用”使用现有的资源库位置”,这里只是做个库连接,并不是创建库,然后点击”下一步”.

clip_image066

下一步,为新项目起一个名,可以随便起名,但尽量与原项目同名:

clip_image068

clip_image070

点击OK后,在控制台下有如下数据输出:

clip_image072

右键单击在被SVN控制的文件,出现如下菜单:

clip_image074

5.3 新文件添加到版本控制库中

如果是新文件,或新包,要先添加版本控制,然后再提交

clip_image076

5.4 把Eclipse项目加入到SVN库中

clip_image078

clip_image080

在此处点击SVN时可能出现一个错误,” org.tigris.subversion.javahl.ClientException?: Path is not a workingcopy”,不用管,继续下一步.

clip_image082

clip_image084

clip_image086

clip_image088

clip_image090

clip_image092

clip_image094

项目提交到库中成功.

5.5 如何断开eclips和SVN的连接:

clip_image096

点击”断开连接”

clip_image098

如果要删除项目,应该先断开连接,选中从文件系统中删SVN子元素,然后再在本地删除项目.

重新连接SVN:

clip_image100

5.6 多人对同一文件修改后的冲突解决

如果有多个人,对同一文件做了修改,则,则第一人提交了以后,其他的人如果不解决冲突问题,则文件不能被提交,必须要先”更新”,然后解决冲突,然后才能提交,注意要选择,标记为解决,更新,就好了,不会覆盖本地的文件,会下载新的程序,并本本地文件比较,指出冲突的地方

clip_image102

如果如图,一样,是修改状态,则可以提交成功

5.7 未落实的操作

如果文件被修改了,但还没有提交,则会显示”未落实的操作”.

clip_image104

5.8 SVN库的重新定位,如IP地址的改变

clip_image106

clip_image108

clip_image110

本文出自 “achilles” 博客,请务必保留此出处http://orajc.blog.51cto.com/458434/94549

抱歉!评论已关闭.