??xml version="1.0" encoding="utf-8" standalone="yes"?>精品福利在线观看,日韩精品福利在线,欧美日韩一区二区在线http://www.aygfsteel.com/gdufo/category/51566.htmlzh-cnThu, 17 May 2012 20:58:24 GMTThu, 17 May 2012 20:58:24 GMT60VisualSVN 理http://www.aygfsteel.com/gdufo/archive/2012/05/17/378408.htmlgdufogdufoThu, 17 May 2012 07:06:00 GMThttp://www.aygfsteel.com/gdufo/archive/2012/05/17/378408.html


以前使用官方Subversion搭徏SVN版本控制环境Q感觉很J琐Q需要手动该文gQ很ȝQ今天在|上看到了VisualSVN搭徏版本控制环境的方法,写出来和大家分n一下。欢q提出问题O(∩_∩)O~

1、下载安装文Ӟ服务器端和客LQ?/p>

服务器端采用VisualSVNQ一个可用的下蝲地址是:http://idc218b.newhua.com/down/VisualSVN-Server-2.1.2.zipQ如果链接失效,从百度谷歌搜索就可以了,很多下蝲地址?/p>

客户端采用大家熟悉的TortoisesvnQ没错,是那个乌龟,官方下蝲地址是:http://tortoisesvn.net/

服务器端用来存放提交的文Ӟ客户端用来连接服务器端,提交和下载服务器端的文gQ(q个不用我多说了吧,下一话题^_^Q?/p>

2、安装服务器端,解压~下载的文gVisualSVN-Server-2.1.2.zipQ双击VisualSVN-Server-2.1.2.msiq行安装

安装q程中有一个界面是选择安装的组Ӟ选择W一?#8220;VisualSVN Server and Management Console”可以了。如?/p>

下一个界面的讄如图Q?/p>

可以更改目录Q也可以更改端口Q注意,端口不要和已l用的端口冲突Q去?#8220;use secure connnection https://”的选项

q里的C:/Repositories是服务器文档目录Q也是我们提交到SVN里的文档的存攄录,q个目录大家可以更改

点击下一步,默认安装完成卛_?/p>

3、安装客L软gTortoiseSVN-1.5.3.13783-win32-svn-1.5.2.msiQ双击默认安装就可以了,安装完成可能要重启,重启卛_?/p>

4、配|服务器?/p>

点击开?->E序->VisualSVN-->VisuaSVN Server Manager启动服务器管理器Q右键选择VisualSVN Server(Local)Q选择PropertiesQ在弹出H口中选择NetWork标签Q在ServerName处输入本机的IP地址Q我的地址?192.168.158.129Q端口我选择8080.Q确定保存,再点击VisualSVN Server可以看到右面的界面,我们的访问地址是Sever URL http://192.168.158.129:8080/svn/

 

现在我们新徏两个目录Q右键选择RepositoriesQ选择Create new RepositoryQ输入名字documentQ保?/p>

新徏用户Q右键选择 UsersQ选择Create UserQ输入用户密码test,testQ这个口令将在客Lq接SVN服务器时使用

为刚才创建的document  Repositoryd用户Q右键选择documentQ选择PropertiesQ点击Add按钮Q选择刚才d的用P保存Q如?/p>

 

q样Q服务器端就配置好了Q回到客L

 

因ؓ已经安装了客L软gTortoisesvnQ在D盘下Q新建文件夹testsvnQ打开文g夹,右键选择check out(?Q?/p>

在弹出窗口的版本库URL处输入,http://192.168.158.129:8080/svn/document

如图

 

定Q保存。注意上面的目录是D:/testsvnQ?/p>

在testsvn中新Z个文本文档,新徏文本文档.txtQ在testsvnI白处,点击右键Q选择提交Q(commitQ,则文件会被传到文档服务器Q其他h可以下载了?/p>

gdufo 2012-05-17 15:06 发表评论
]]>
eclipse下SVN subclipse插ghttp://www.aygfsteel.com/gdufo/archive/2012/04/28/376993.htmlgdufogdufoSat, 28 Apr 2012 13:09:00 GMThttp://www.aygfsteel.com/gdufo/archive/2012/04/28/376993.htmlsubversionE序Q和mysql很类|是c/sl构的,有客L和服务器端。服务器端和客户端都是通过命o行方式启动和执行的。本文只会用到客户端的命o?/p>

W三Ҏ供了各种囑Ş界面的客L工具Q比如eclipse插gsubclipseQwindows囑Ş界面工具tortoiseSVN。这些后面会提到它们的基本用?/p>

subversion资源

  • subversion官方|站Q?a title="http://subversion.tigris.org/" >http://subversion.tigris.org/
  • subclipse官方|站Q?a >http://subclipse.tigris.org/
  • tortoiseSVN官方|站Q?a >http://tortoisesvn.tigris.org/
  • 使用subversionq行版本控制中文版在U版本:http://www.subversion.org.cn/svnbook/

安装subversion

有关subversion和subclise的安装暂略,因ؓ目前提供的虚拟机开发环境已l安装和配置?/p>

tortoiseSVNQ可到官方网站上下蝲最新版本的windows安装包,默认安装Q不需要做其他讄Q安装后需要重启计机。能在资源管理器中鼠标右键菜单看到如下图所C条目,p明安装成功?/p>

image

使用subversion

日常工作中用subversion仅仅是几个命令或者操作,q不复杂。但是它内部的一些机刉要逐渐ȝ解?/p>

Z?/h4>

在刚开始进入一个开发队伍的时候,已经有版本控制和软g目Q用的W一个命令往往是检出(checkoutQ代码。或者当使用和研I开源Y件的时候,也是W一个要用到q个命o。这个命令的作用是把目的源代码下蝲到用h圎ͼq且带有版本控制信息?/p>

比如Q执行以下命令获取一个项目的源代码:

svn co http://easymorse.googlecode.com/svn/trunk/vfs.demo/

q个命o在本地当前目录建vfs.demo目录q将该服务器目录下的所有文件下载到本地Qƈ且,会生成隐藏文?SVN目录Q用于记录版本控制信息?/p>

tortoiseSVN有图形界面的出操作,但是命o行方便快P使用命o行?/p>

如果使用eclipseq安装了subclipse插gQ可以通过插g导入目?/p>

image

然后Q?/p>

image

选择或者新源库位置Q?/p>

image

选择资源库中的项目目录?/p>

image

然后Q就可以完成QfinishQ了?/p>

image

初始导入

何时使用初始导入Q比如,对于java开发h员来_在eclipse中编写了一个项目,q决定把目׃n到版本控制器上,q时需要初始导入操作了?/p>

以下以subclipseZ说明初始导入的步骤?/p>

W一步,选择share projectQ共享你的项目:

image

选择通过svn׃n目Q?/p>

image

填写svn提交的urlQ?/p>

image

q个urlQ需要subversion的管理员告知你,q有用户名和密码。如果想l习一下,google提供了免费的svnQ你可以通过Q?a >http://code.google.com 甌目Q这样就会有cM我上面的url和权限?/p>

然后可以直接点击finishQ完成初始提交。选择nextQ可以做定制模块名和初始提交的信息,一般不需要?/p>

如果你的svn服务器用了https协议Q需要接受一个数字证书,一般选择怹接受?/p>

image

之后Q会要求输入用户名和密码。徏议勾选保存密码,否则会很ȝ?/p>

image

q样Q再看项目,会发现条目上多了问号Q这旉要选择哪些目录和文仉要提交,哪些需要忽略,比如生成的class文g{?/p>

image

选择需要忽略的文g或者目录,q时需要切换到D视图下才能看到所有文件和目录Q?/p>

image

从导航视囄到的情况Q?/p>

image

选中需要忽略的目录和文Ӟ操作svnQ?/p>

image

然后提交整个目卛_。有x交的操作见下文?/p>

更新目

目在提交前Q应该先做更新项目操作。比如有一个文件a.txtQ已l提交到svn中,q样Q可能有其他用户提交了新的改动到a.txtQ你现在?修改了a.txtQ准备提交你的改动。先操作更新a.txtQ这样如果该文g在svn服务器已l改动,会将改动加入到当前本地的a.txt中?/p>

在subclipse中的操作Q?/p>

image

提交代码

提交代码Q一般会U联当前目录下所有改动的内容?/p>

image

删除代码

对于不再使用的代码,可以直接删除掉,比如通过windows删除文gQ通过ubuntu的rm命o或者通过eclipse的delete功能Q然后提交项目,subclipse会知道哪个文件被删除了,q将q个变化通知lsvn服务器?/p>

q原代码

如果代码做了改动Q可以是多个文gQ也可以删除了文件或者新增了文gQ但是没有提交到svn服务器,可以通过q原功能恢复到改动前的样子?/p>

image

版本的分支与合ƈ

版本的分支和合ƈQ是版本控制的核心功能?/p>

比如QY仉过版本的分支,项目分配给多h做分工开发,通过版本合ƈQ将q些分工实现的代码合q到新的版本中;或者,修改代码bug的时候,可以 先打Z个版本分支,保留出现bug的版本,比如分支版本名称为pre_fix_bug_2201Q这?201表示bug的代P然后针对q个分支做修 改fixq个bugQ再修改后的内Ҏ交到一个新的分支版本,比如post_fix_bug_2201Q再到适当时候将q个分支合ƈC码主q中厅R?/p>

以上说了一下版本分支与合ƈ的用途,q里单说一下svn版本分支合ƈ的基本原理?/p>

首先是版本分支,实际上是当前版?#8220;copy”到分支上Q非常类似windows下,某个目录的快捷方式复制到其他\径。这UcopyQ可以说 是轻量copy或者叫廉hcopyQ不是复制版本内容,而是做一个内部的引用。这Lcopy很快Q对服务器也没有I间上的开销?/p>

版本的合qӞ是svn开发中的难点,当做版本合ƈ的时候,服务器会试图的合q同一个文件的不同版本Q可能会带来版本冲突Q这需要操作者做手工的处理,消除版本冲突。合理分工的目应该可以通过理手段量避免q种情况?/p>

以下是通过subclipse演示版本分支的操作。首先,目文档应该已经全部提交Q然后,选择

image

然后Q填写urlQ一般是在tags/目录下:

image

然后默认选项Qnext卛_Q然后选择finish按钮。在svn的相应\径下׃有一个同名的目?/p>

image

打分支,实际上就是徏立了一个项目的轻量Ucopy?/p>

如何从版本的一个分支切换到另外一个分支,q也是很重要的,它能帮助你轻村֜不同的项目版本中自动切换Q而不必在eclipse里维持多个项目?/p>

image

选择要切换的目版本路径Q或者直接输入亦可?/p>

image 

然后点击ok后,目卛_切换到该版本下?/p>

在分支上做了改动Qƈ且已l提交(一般tags目录下的目U定是只ȝQ不改动Q这里是Z举例方便Q,那么Q可以将q个版本合ƈ到trunkQ主qԌ代码中,让主q也拥有最新的代码?/p>

image 

选择需要合q的源,比如从tags上面一个版本,合ƈCqԌtrunkQ代码中?/p>

image

之后Q需要设|一些合q的Ҏ,q里默认配置卛_?/p>

image

执行完毕后,会有一个合q报告,可见没有出现冲突情况?/p>

image

q时候看源代码,可以发现有改动,q些改动是合ƈq来的代码?/p>

image

改动如果没有问题Q就可以提交Q这样就完成了一ơ版本的合ƈ工作?/p>

 

 

“q原”已经提交的改?/h4>

如果文档没有提交Q还原是很容易的Q只需执行q原QrevertQ就可以了。有时候,已经提交了代码,l果发现了问题,需要回退C前提交的版本Q就不是很容易了?/p>

q时候的q原Q其实是以前的某个修订本(revisionQ覆盖当前的本地工作拯。然后再提交q些改动Q成为新的修订本?/p>

下面演示一下?/p>

首先提交了一个版本的改动Q这是以后需要还原回来,q里Qؓ了以后还原方便,要在提交的消息中说明改动了什么。(q一步在开发中是必ȝQ是U律Q?/p>

image

下面Q再修改一下项目,然后提交一ơ,q里故意增加一个文件?/p>

image

提交以后Q后悔了Q想恢复到前一个修订版。虽然可以通过版本可行覆盖还原,但是一般h是无法记忆这个版本号的,另外是实际情况往往更复杂,不会像示例中那样是相ȝ两个修订版?/p>

所以提交修订版时的注解消息显得特别重要?/p>

q时可以通过svn的日志功能查看到q些版本和它们的注释消息?/p>

image

看到历次版本的消息内宏V?/p>

image

q样Q根据注释,我们很容易找到需要还原到以前的那个修订版。如果不攑ֿQ我们还可以Ҏ上下文菜单,Ҏ两个修订版的区别?/p>

image

看比较结果。可以看出,增加了一个文Ӟ另外一个文件中有一处差异?/p>

image

那么Q可以确定是?25修订版恢复(q原Q?/p>

image

更改后的目Q相当于?25修订版还原了126修订版?/p>

image

可以看到126版本d的文件不见了Q另外VfsDemo.java文g也还原到125版本的内宏V这时提交将成ؓ127版本Q这个版本其实就?25版本。算是还原了dQtrunkQ上的代码?/p>

image

h历史Q可以看C订版已经生效?/p>

image



gdufo 2012-04-28 21:09 发表评论
]]>Windows下安装SVNQSubversionQ独立服务器步骤Q?/title><link>http://www.aygfsteel.com/gdufo/archive/2012/04/28/376990.html</link><dc:creator>gdufo</dc:creator><author>gdufo</author><pubDate>Sat, 28 Apr 2012 10:41:00 GMT</pubDate><guid>http://www.aygfsteel.com/gdufo/archive/2012/04/28/376990.html</guid><description><![CDATA[参?<div>http://blog.ofriend.cn/post/95.html</div><br /><div><p>Windows下安装SVNQSubversionQ独立服务器步骤Q?/p><p>安装之前需要准备的软gQ?/p><blockquote><p>1、Setup-Subversion-1.7.0.msi<br />2、TortoiseSVN-1.7.0.22068-win32-svn-1.7.0.msi<br />3、LanguagePack_1.7.0.22068-win32-zh_CN.msi</p></blockquote><p>下蝲地址Q?/p><blockquote><p>1?a >http://sourceforge.net/projects/win32svn/files/</a>  <br />2?a >http://sourceforge.net/projects/tortoisesvn/files/</a></p></blockquote><p>安装步骤及简要配|:</p><blockquote><p>1、安装Setup-Subversion-1.7.0.msi<br />2、安装TortoiseSVN-1.7.0.22068-win32-svn-1.7.0.msi<br />3、安装LanguagePack_1.7.0.22068-win32-zh_CN.msi</p><p>4、添加subversion环境变量Q?span style="color: #ff0000"><strong>c:\program files\subversion\bin</strong></span></p><p>5、创建版本库Q?br />a?span style="color: #ff0000"><strong>svnadmin create c:\svn\repository<br /></strong></span>b、创建空目录repository->右键->TortoiseSVN->Create Repository here...</p><p>6、配|用户和认证Q?br /> Svnserve.conf:核心配置文gQ?br />  # password-db = passwd ><span style="color: #ff0000"><strong>password-db = passwd<br /></strong></span>  # authz-db = authz ><span style="color: #ff0000"><strong>authz-db = authz<br /></strong></span> Authz:配置用户权限的文?br /> Passwd:新加用户名和密码的文?/p><p>启动subversion:</p><p>在dos命o下,输入Q?gt; svnserve exe -d -r d:\svn_repo(<span style="color: #0000ff;">q行自己加的)</span><br /></p><p>7、运行SubversionQc:\svn\repository><span style="color: #ff0000"><strong>svnserve --daemon<br /></strong></span> 或者:c:\svn\repository><strong><span style="color: #ff0000">svnserve --daemon --root c:\svn<br /></span></strong>注:q行的时候不能关闭命令行H口Q关闭服务就退ZQ因此可以添加到pȝ服务w机启动即可!</p><p>8、添加系l服务,随系l启动:<br /><span style="color: #ff0000"><strong>sc create svnservice  binpath= "c:\program files\subversion\bin\svnserve.exe --service --root c:\svn" displayname= "Subversion" depend= tcpip start= auto</strong></span></p><p>9、删除服务:<br /><strong><span style="color: #ff0000;">sc delete svnservice</span></strong></p><p><strong><span style="color: #ff0000"><br /></span></strong></p></blockquote><p>注:在Windows XP SP3下测试通过Q其他^台暂未测试!</p></div><img src ="http://www.aygfsteel.com/gdufo/aggbug/376990.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/gdufo/" target="_blank">gdufo</a> 2012-04-28 18:41 <a href="http://www.aygfsteel.com/gdufo/archive/2012/04/28/376990.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <a href="http://www.aygfsteel.com/" title="狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频">狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频</a> </div> </footer> վ֩ģ壺 <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">Դ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">Ű</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">º</a>| <a href="http://" target="_blank">̨</a>| <a href="http://" target="_blank">ɽ</a>| <a href="http://" target="_blank">ɽ</a>| <a href="http://" target="_blank">ղ</a>| <a href="http://" target="_blank">̨</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ľ</a>| <a href="http://" target="_blank">᯹</a>| <a href="http://" target="_blank">Ϫ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ʦ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ƽԶ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ϼ</a>| <a href="http://" target="_blank">ڻ</a>| <a href="http://" target="_blank">ʯʨ</a>| <a href="http://" target="_blank">«Ϫ</a>| <a href="http://" target="_blank">֣</a>| <a href="http://" target="_blank">޳</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">۩</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ɽ</a>| <a href="http://" target="_blank">ǰ</a>| <a href="http://" target="_blank">ʡ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>