svn的使用-更新
TORTOISESVN使用方法

TortoiseSVN使用简介目录:∙ 1 安装及下载client 端∙ 2 什么是SVN(Subversion)?∙ 3 为甚么要用SVN?∙ 4 怎么样在Windows下面建立SVN Repository?∙ 5 建立一个Working目录∙ 6 新增档案及目录到Repository中∙7 更新档案及目录∙8 更新至特定版本∙9 复制档案及目录∙10 制作Tag或是Release∙11 快速参考∙11.1 取得(Checkout)Repository∙11.2 更新(Update)档案或目录∙11.3 新增(Add)档案或目录∙11.4 提交(Commit)修改过的档案或目录∙11.5 Copy/Tag/Branch/Release档案或目录安装及下载client 端1. 下载Windows 端程序:/downloads。
一般而言,如果是32-bit的Windows XP 应该使用TortoiseSVN-1.4.x.xxxx-win32-svn-1.4.x.msi 这个档案。
如果是64-bit 的操作系统,则应该使用TortoiseSVN-1.4.x.xxxx-x64-svn-1.4.x.msi 这个档案。
2. 执行下载回来的TortoiseSVN 安装程序,就会进行TortoiseSVN 的安装。
正确安装后,应该进行一次的重开机,以确保TortoiseSVN 的正确无误。
3. 安装成功后,在档案管理员内按下鼠标右键,应该可以看到如下的画面:大部分的TortoiseSVN的操作都是透过档案管理员及鼠标右键就可以完成了。
如果您之前使用过TortoiseCVS,应该会对这种操作方式感到十分亲切。
什么是SVN(Subversion)?有一个简单但不十分精确比喻:SVN = 版本控制 + 备份服务器简单的说,您可以把SVN当成您的备份服务器,更好的是,他可以帮您记住每次上传到这个服务器的档案内容。
并且自动的赋予每次的变更一个版本。
SVN客户端--TortoiseSVN使用说明

SVN客户端--TortoiseSVN使用说明TortoiseSVN是windows下其中一个非常优秀的SVN客户端工具。
通过使用它,我们可以可视化的管理我们的版本库。
不过由于它只是一个客户端,所以它不能对版本库进行权限管理。
TortoiseSVN不是一个独立的窗口程序,而是集成在windows右键菜单中,使用起来比较方便。
TortoiseSVN每个菜单项都表示什么意思01、SVN Checkout(SVN取出)点击SVN Checkout,弹出检出提示框,在URL of repository输入框中输入服务器仓库地址,在Checkout directory输入框中输入本地工作拷贝的路径,点击确定,即可检出服务器上的配置库。
02、SVN Update(SVN更新)如果配置库在本地已有工作拷贝,则取得最新版本只是执行SVN Update即可,点击SVN Update,系统弹出更新提示框,点击确定,则把服务器是最新版本更新下来03、Import(导入)选择要提交到服务器的目录,右键选择TortoiseSVN----Import,系统弹出导入提示框,在URL of repository输入框中输入服务器仓库地址,在Import Message输入框中输入导入日志信息,点击确定,则文件导入到服务器仓库中。
04、Add(加入)如果有多个文件及文件夹要提交到服务器,我们可以先把这些要提交的文件加入到提交列表中,要执行提交操作,一次性把所有文件提交,如图,可以选择要提交的文件,然后点击执行提交(SVN Commit),即可把所有文件一次性提交到服务器上05、Resolving Conflicts(解决冲突)有时你从档案库更新文件会有冲突。
冲突产生于两人都修改文件的某一部分。
解决冲突只能靠人而不是机器。
当产生冲突时,你应该打开冲突的文件,查找以<<<<<<<开始的行。
冲突部分被标记:<<<<<<< filenameyour changes=======code merged from repository>>>>>>> revisionSubversion为每个冲突文件产生三个附加文件:filename.ext.mine更新前的本地文件。
SVN使用和SVN常用命令

Svnserve –d –r 路径名+文件名Svn://IPSVN使用和SVN常用命令之前比较少接触linux,今天参考网上的资料实践了一下如何建立svn仓库,包括简单的授权设置。
假设要建立一个svn项目:new_project一、创建svn仓库去到svn服务的根目录,(这个目录是在启动svn服务的时候指定的,启动的命令如:svnserve -d -r /usr/local/svnrepos)执行创建仓库命令:svnadmin create new_project这样在/usr/local/svnrepos/ 里面就多了一个new_project目录出来,进入new_project/conf/ 目录vi svnserve.conf将下面几行的注释去掉[general]anon-access = read #匿名的用户可读auth_access = write #有授权的用户可写password-db = passwd #表示svn用户的授权资料保存在passwd文件里面在conf/目录里面vi passwd,添加授权资料。
格式如下:[user]your_name = your_password二、导入源码(导入源码的过程不一定要按照下面说的来做,关于svn目录管理其实可以很灵活,适合自己就行)现在先准备一个临时文件夹,用来构建仓库中的基本目录结构:mkdir tempmkdir temp/trunkmkdir temp/tagsmkdir temp/branches这时可以将temp目录导入的仓库中:svn import temp svn://localhost/new_project -m 'initial'如果new_project已经开发到一定程度,我们只需要将源码导入到仓库中的trunk就行了。
假设源码的根目录是~/new_project进入~目录,把源码导入到trunk中:svn import new_project svn://localhost/new_project/trunk -m 'initial again'====================================================================== =========1、将文件checkout到本地目录svn checkout path(path是服务器上的目录)例如:svn checkout svn://192.168.1.1/pro/domain简写:svn co2、往版本库中添加新的文件svn add file例如:svn add test.php(添加test.php)svn add *.php(添加当前目录下所有的php文件)3、将改动的文件提交到版本库svn commit -m “LogMessage“[-N] [–no-unlock] PA TH(如果选择了保持锁,就使用–no-unlock开关)例如:svn commit -m “add test file for my test“test.php简写:svn ci4、加锁/解锁svn lock -m “LockMessage“ [–force] PATH例如:svn lock -m “lock test file“test.phpsvn unlock PATH5、更新到某个版本svn update -r m path例如:svn update如果后面没有目录,默认将当前目录以及子目录下的所有文件都更新到最新版本。
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简介Subversion(简称svn)是一个开源的版本控制系统,可以有效地管理和追踪文件的变更历史。
它广泛用于软件开发项目中,使团队成员可以协同工作并保持代码的一致性。
二、svn的基本操作1. 检出代码:使用svn checkout命令从远程仓库获取代码副本到本地工作目录。
例如:svn checkout svn://localhost/project。
2. 更新代码:使用svn update命令从远程仓库获取最新的代码变更并更新到本地工作目录。
例如:svn update。
3. 提交代码:使用svn commit命令将本地工作目录中的代码变更提交到远程仓库。
例如:svn commit -m "提交代码"。
4. 查看代码状态:使用svn status命令查看本地工作目录中文件的状态,包括已修改、已删除、已添加等。
例如:svn status。
5. 添加文件:使用svn add命令将本地工作目录中的新文件添加到版本控制中。
例如:svn add file.txt。
6. 删除文件:使用svn delete命令将本地工作目录中的文件删除,并将删除操作提交到版本控制中。
例如:svn delete file.txt。
7. 撤销文件修改:使用svn revert命令将本地工作目录中文件的修改还原为最近一次更新或提交的状态。
例如:svn revert file.txt。
8. 查看文件差异:使用svn diff命令查看本地工作目录中文件的差异,即与版本库中对应文件的差异。
例如:svn diff file.txt。
9. 查看文件日志:使用svn log命令查看文件的提交日志,包括每次提交的作者、日期和提交信息。
例如:svn log file.txt。
10. 创建分支:使用svn copy命令创建一个文件或目录的副本,以便进行独立的开发工作。
例如:svn copy file.txt file_branch.txt。
SVN使用规范

1. SVN使用规范先更新,再提交SVN更新的原则是要随时更新,随时提交。
当完成了一个小功能,能够通过编译并且自己测试之后,谨慎地提交。
如果在修改的期间别人也更改了svn的对应文件,那么commit就可能会失败。
如果别人和自己更改的是同一个文件,那么update时会自动进行合并,如果修改的是同一行,那么合并时会产生冲突,这种情况就需要同之前的开发人员联系,两个人一起协商解决冲突,解决冲突之后,需要两人一起测试保证解决冲突之后,程序不会影响其他功能。
在更新时注意所更新文件的列表,如果提交过程中产生了更新,则也是需要重新编译并且完成自己的一些必要测试,再进行提交。
这样既能了解别人修改了哪些文件,同时也能避免SVN合并错误导致代码有错。
多提交每次提交的间歇尽可能地短,以几个小时的开发工作为宜。
例如在更改UI界面的时候,可以每完成一个UI界面的修改或者设计,就提交一次。
在开发功能模块的时候,可以每完成一个小细节功能的测试,就提交一次,在修改bug的时候,每修改掉一个bug并且确认修改了这个bug,也就提交一次。
我们提倡多提交,也就能多为代码添加上保险。
不要提交不能通过编译的代码代码在提交之前,首先要确认自己能够在本地编译。
如果在代码中使用了第三方类库,要考虑到项目组成员中有些成员可能没有安装相应的第三方类库。
项目经理在准备项目工作区域的时候,需要考虑到这样的情况,确保开发小组成员在签出代码之后能够在统一的环境中进行编译。
每次提交必须书写明晰的标注在一个项目组中使用SVN,如果提交空的标注或者不确切的标注将会让项目组中其他的成员感到很无奈,项目经理无法很清晰的掌握工作进度,无法清晰的把握此次提交的概要信息。
在发现错误后也无法准确的定位引起错误的文件。
所以,在提交工作时,要填写明晰的标注,能够概要的描述所提交文件的信息,让项目组其他成员在看到标注后不用详细看代码就能了解你所做的修改。
提交时注意不要提交本地自动生成的文件例如eclipse中的.classpath文件,Windows生成的缩略图Thumbs.db,项目编译生成的临时文件.obj, .class等等。
SVN客户端操作使用说明

SVN客户端操作使用说明一、服务端准备1.服务端新建仓库project1,并记录好仓库URL,客户端对应的文件夹数据全部保存在此仓库中,本例仓库URL地址为https://:8443/svn/project1/ 2.二、1.在客户端新建文件夹work c1作为用户c1的工作区,右键work c1选择“SVN检出”,如下图所示2.在弹出的检出对话框中,“版本库URL”指仓库路径;“检出至目录”指的是在客户端的工作目录;由于是空文件夹,检出深度、版本选择默认即可,如下图所示3.由于对仓库设置了权限,所以按确定按钮后,系统会要求认证,在认证窗口中输入c1的用户名密码,如果不想每次都验证,可以勾选“保存认证”,如下图所示4.按确定后,客户端文件夹上会有绿色的勾显示,即代表客户端与服务端建立了通信,如下图所示三、从客户端上传信息至服务端1.在文件夹work c1中新建文件夹word,文本文件test;在word文件夹中新建文本文件word1,word2,word3,所以新建的文件都会被打上问号,如下图所示2.右键work c1,选择“SVN提交”,如下图所示3.在弹出的提交对话框中,上半部分可以写入变更内容,如“c1第一次上传”,在下方的变更列表中可以看到与服务器上的差异,选择全部,确认后同样会弹出认证窗口,输入c1的用户名密码即可,如下图所示4.提交成功后会显示一个成功页面,上面显示了这个提交的内容,并显示版本号,如下图所示5.此时,客户端的文件、文件夹都会打勾,证明已全部上传到服务端,如下图所示四、从服务端下载至客户端1.检出深度(全递归):在客户端新建work r1文件夹,并建立与服务端通讯,操作见上面第二步,检出深度选择全递归,复制全部的信息至客户端,用r1验证即可2.检出深度(直接子节点,包含文件夹):在客户端新建work r21文件夹,右键选择“SVN检出”,在弹出的检出对话框,检出深度选择“直接子节点,包含文件夹”,如下图所示确认后,将从服务端下载数据至客户端,完成后,从客户端可以看到,检出的数据只有word空文件夹,以及text文件,word文件夹中的三个文件均为检出3.检出深度(仅文件子节点):在客户端新建work r22文件夹,右键选择“SVN检出”,在弹出的检出对话框,检出深度选择“仅文件子节点”,如下图所示确认后,将从服务端下载数据至客户端,完成后,从客户端可以看到,检出的数据只有text文件,word文件夹及文件夹中的三个文件均为检出4.检出深度(仅此项):在客户端新建work r23文件夹,右键选择“SVN检出”,在弹出的检出对话框,检出深度选择“仅此项”,如下图所示确认后,将从服务端下载数据至客户端,完成后,从客户端可以看到,没有检出任何数据,文件夹work r23为空5.检出深度(自定义深度):此方法可以根据需要从客户端下载相应的文件,在客户端新建work r24文件夹,右键选择“SVN检出”,在弹出的检出对话框中,单击“选择项”,如下图所示在弹出的认证窗口中输入用户名、密码,确认通过后会弹出版本库浏览器,,可根据需要勾选需要从服务器端下载的文件,如下图所示点击确认后,在检出窗口中检出深度会自动更改为“自定义深度”,如下图所示单击“确定”即可从服务端下载勾选的文件,如下图所示检出过程在客户端文件夹,可看到work r24文件夹内有word文件夹和test文本文件,其中word文件夹中只有word1一个文件,跟当初勾选的项目一致。
SVN日常使用说明

1.版本控制原则SVN(或者其他版本控制软件)只是一个版本控制的辅助工具,不可能把所有的问题都自动解决掉。
尤其,对于冲突这个麻烦事儿,项目成员在项目进程中要尽量通过优化流程来解决,而不是将希望寄托于软件工具来自动解决一切问题。
2.各阶段中svn的使用方法介绍2.1.初始化版本库初始化版本库有两种常用的方式:2.1.1.直接“导入Import…”(目前,OSSP版本已经导入到版本库,项目组成员无需做此操作)对要执行导入操作得项目文件夹进行如下清理:1. 把项目中不需要的文件删除。
(临时文件、编译器创建的文件,比如*.obj、二进制文件等。
)2. 把文件夹和子文件夹中的所有文件整理一遍。
虽然你可以在导入之后再来进行重命名或删除等操作,但是还是推荐你在导入之前把你的项目整理好。
在资源管理器(windows explorer)中选择项目(本地硬盘上)的根文件夹,单击鼠标右键,选择导入Import…命令,跳出一个对话框:在这个对话框中你需要填写你要将项目导入仓库的URL地址(svn必须小写)。
导入信息(Important Message)是用来记录日志信息的。
注意:与“忽略样式exclude pattern”匹配的文件或文件夹不会被导入,除非选择了“包含忽略的文件”选项。
按下“确定”按钮后,TortoiseSVN就开始把整个文件夹树(包括所有文件)导入到仓库。
用来做“导入Import”操作的这个文件夹的名字不会出现在仓库中,只有文件夹中的内容会出现。
注意:刚才用来做“导入Import”操作的这个文件夹并没有处于版本控制下!要获取一份处于版本控制之下的[本地工作区]副本,你需要对刚导入的版本做一次“检出Checkout”操作。
2.1.2.“检出Checkout”—>“提交Commit”新建一个空文件夹作为[本地工作区]的存放文件夹(建议与项目同名),在文件夹上(或者文件夹里)单击鼠标右键后在命令菜单中选择“检出Checkout…”,出现操作窗口。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Svn是一个版本控制软件,可以使得我们项目组协同工作,每个人都必须使用这个工具来保证我们机器上的程序是最新和可追溯的,并且是同步的。
下面介绍如何使用这个软件。
一、安装软件
1.TortoiseSVN-1.6.15.21042-win32-svn-1.6.16.msi
nguagePack_1.6.15.21042-win32-zh_CN.msi
安装过程和一般的软件没有区别,按提示进行重启。
二、使用步骤
1.安装完软件后,找一个目录,右键点击,如下图选择
点击setings,出现下图,将语言修改成中文简体,确定后界面语言就变成中文。
2.上述软件安装完成后,第一步要签出我们对应的项目,有两个一个php项目,一个.net
项目。
下面以php项目组为例
3.新建一个目录或者将原来放php源代码的目录清空。
然后右键这个目录,选择svn检出,
如下图
点击后出现下图
4.在版本库url中输入:svn://210.34.148.24/php,如果是net小组则输入:
svn://210.34.148.24/net,其余就默认,点击确认,按要求输入用户名和密码,用户名密码我后面会给出。
5.用户名和密码是每个人的拼音的一个字母,如王伟琪的用户名密码就都是:wwq
6.此时出现下图
Svn将服务器上的代码和文档传输到你的本机,在你刚才所建的目录中就是最新代码。
7.打开刚才你建的目录,会看到文件夹和文件的图标改变了,如下图
8.这就是签出(check out)功能,
9.其他常见功能请参考/tsvn/1.5/tsvn-dug.html
这些是日常使用指南,不需要全部看完,只需看到“撤销更改”这一小节。
忽略已经版本控制的文件
如果你不小心添加了一些应该被忽略的文件,你如何将它们从版本控制中去除而不会丢失它们?或许你有自己的IDE配置文件,不是项目的一部分,但将会花费很多时间使之按照自己的方式工作。
如果你还没有提交,你只需要TortoiseSVN → Revert...来取消添加,你需要将这个文件添加到忽略列表,这样它们才不会被再次误添加近来。
如果文件已经存在于版本库,你需要做更多的工作。
1.用Shift键获得扩展上下文菜单(即按住shift键,然后右键点击这些文
件),使用 TortoiseSVN →删除(保留版本副本) 标记文件/目录从版本库删除,但是保留版本副本。
2.TortoiseSVN →提交父目录。
3.将文件/目录增加到忽略列表,所以你不会再遇到同样的麻烦
另
这是一个更简单但不是很详细的教程。
大家也可以试试看。
/?action-viewnews-itemid-1%C2%A0%C2%A0。