-
安装两个软件: 1. SVN服务端,可以用VisualSVN Server,在这里可以新增用户 2. SVN客户端,可以用TortoiseSVN 第一次从某一个仓库下载代码时:在任意一个文件夹下右键单击,SVN Checkout: URL of repository: 服务端仓库路径,本地地址: https://127.0.0.1:443(服务器端安装时的选择的端口)/svn/Test/ Checkout directory: 将远程仓库放在本地的文件夹路径 基本操作: SVN Commit:在本地仓库有更新时,提交,要写注释 SVN Update:拉远程的仓库 show log:针对文件,右键单击,可以看到提交记录,在提交的记录里,右键单击,可以选择需要revert的版本(在下方的path里面也可以右键单击,将文件保存到本地磁盘) 在svn的根目录也可以show log 冲突 有冲突时提交会产生三个文件,.mine是自己改好之后的代码,rx,ry,x,y两个数字较小者是我改之前的代码,数字较大者,是服务端的代码 1.如果要保留自己的版本,就用mine覆盖原来的代码,再次提交 2.如果认为对方是正确的,就revert一下,这个时候已经拿到了最新的代码(不一定非要这样操作,但是这样方便) 3.如果认为上一个版本是正确的,用版本较小的覆盖(直接删除改后缀名) 经验:如果Commit Failed!就不要点了ok继续按update了,先把自己的代码复制到一边,再把那个文件revert,再update,再把放在一边的文件重命名复制到相同文件夹下,选中两个冲突的文件,TortoiesSVN->diff,左边是最新的代码,右边的是我的,解决冲突之后两个人最好都update一下 与历史记录比对:show log之后,同时选中两个版本(比如现在到了第10版,那么要10/9先比较,看看有没有差异,没有差异,则比较9/8版,如果仍没有差异,以此类推继续比较),Compare revisions
查看全部 -
1.分支不同 ==> update merge(svn自动合并)
2.分支冲突 ==> 协商解决冲突,选择一个正确的版本覆盖(最新的正确直接Revert最新):
出现四个文件。黄色感叹号代表SVN没办法自动合并,因为A B修改的内容一致。
第一个文件:共同修改内容对比显示。第二个文件:A你的代码 第三个文件:A B修改之前的版本代码 第四个文件:B的代码
解决办法:1.A和B讨论,选择哪个版本。就把那个版本恢复。
恢复方法:比如A的正确,就把第二个文件重命名为A的那个文件名,覆盖。
若想恢复成A B之前的版本,用第三个文件覆盖
若想恢复成B的,也是用第四个文件覆盖,或者在第一个文件右击,revert到现在服务器上的B的版本查看全部 -
svn常见的问题:
1.多人操作同一个文件。对于提交时commit,我们尽可能的输入一些文字描述。commit里边上边是一个信息板,提供你提交内容描述,下边是对你要提交项目的勾选。
2.我们在操作之前,我们再项目里边右键点击任意地方,选择TortoiseSVN----->settings,清除 Saved Data ----->Authentication data ------->Clear all,清除A的权限,因为我们现在要模拟的是A和B同时操作一个文件。
3.多人操作同一个文件的时候,我们上传文件前要使用SVN Update更新文件,然后再Commit。
4.如果我们打开文件发现我们原来写的内容发生改变,我们要知道谁动了我们的代码,我们可以右键点击TortoiseSVN,下边有好多svn使用命令,我们选择show log进行查看历史记录。里边的顺序是上边是最新修改的内容。红色感叹号 --->修改 绿色加号 -->表示新添加
5.对于修改的代码有几种情况:
1.A的代码是正确的,我们右键点击历史记录里边A提交的代码,选择Revert to this revision。我们在我们的项目里边发现我们的文件又变成了 红色感叹号 ,同时里边的内容发生了改变。
2.B的代码是正确的 和A的操作相同。
3.A和B的代码都需要 当B修改完之后,里边已经有B的内容了,我们查看A的内容是否完整,如果完整,那么就OK了!如果不完整,我们把B的内容复制出来,然后回退到自己之前那个版本,把B的代码再粘进来。
4.A的需要一部分,B的需要一部分。 和3步骤一样。
5.B把这个文件删除了, 选择我们的项目,点击进入,选择 .svn文件,然后右键点击,选择show log ,我们就可以看见针对于这个项目的所有改动。我们可以回退或追回到我们要的项目。如果是删除了,在show log 面板里边分为两块,我们在下边这块会看到删除的文件,我们直接右键拷贝出来就好了!
只要我们这个仓库文件 ---->.svn存在,我们就不用担心。查看全部 -
checkout 路径:
查看全部 -
安装标准版(企业版收费)
查看全部 -
安装SVN的步骤
查看全部 -
如果在很多版本之后才发现问题,可以查看历史版本show log,与历史版本进行比对,有个compare reversion.查看全部
-
代码多,产生问题的代码不止一处,并且两个人各有有效的代码的话: 先把自己的代码粘贴出来,改个名字; 然后回滚到上一次的新版本——Revert一下。 然后Update一下; 然后再把自己的代码粘过来 选中两个文件,然后用Tortoise中的Diff比对工具比对,然后和另一个人商量,改完了就可以把其中一个不用的文件删掉,然后再提交。查看全部
-
SVN合并失败,会出现包含原有文件在内的四个文件,①SVN合并失败的文件(里面有多个人提交的代码)②自己想提交的代码③上一个版本的代码④最新版本的代码。 这时就要去和①里面给定的人商量,商量最后的结果,然后用新的文件覆盖掉①(即要提交的代码)即可。 如果用上一个人提交的代码,直接TortoiseSVN里的Revert即可。 问题已解决,其他几个文件也就随即消失了。查看全部
-
Update的时候都是最新的,但是在Commit的时候就会有先后,后提交的就会提示代码是“过时”的,所以就要先Update一下,在提交,但这时会出现一个问题——代码会merge,将多个人的代码合并(称之为SVN的自动合并)。查看全部
-
首先Update 更新 最后Commit提交查看全部
-
多人提交代码时的各种问题,常见问题1,2,3都是需要多多注意的。查看全部
-
svn下载地址查看全部
-
svn版本控制工具查看全部
-
@版本管理工具介绍---SVN篇——常见问题 1、每天早上上班要update SVN,每天下班要commit SVN。 2、查看是谁动了我的代码,右键 tortoise 后查看 log 日志。 3、文件被别人删除,在空白处右击,show log,可以查看整个库的所有增删改查操作记录,如果单个文件还在,只想查看该文件记录,那就在该文件上查看 log(自从新建一个文件后,对该文件的所有操作都会被服务器仓库记录下来,随时可以可别人商量恢复)。 4、权限清空:TortoiseSVN——Settings——Seved Date——Clear clear all。 5、commit 上面有一块区域是做注释的(推荐常用)。 6、良好冲突: 如果A和B都在修改了代码,B先于A上交,当A去commit的时候,就会提交失败,必须先更新你的本地文件,那么B的代码会和A的代码同时存在(两个人修改的不是一个地方算好的情况了)。 7、较差冲突: 有冲突时提交会产生三个文件,.mine是自己改好之后的代码,rx,ry,x,y两个数字较小者是我改之前的代码,数字较大者,是服务端的代码 1)如果要保留自己的版本,就用mine覆盖原来的代码,再次提交 2)如果认为对方是正确的,就revert一下,这个时候已经拿到了最新的代码(不一定非要这样操作,但是这样方便) 3)如果认为上一个版本是正确的,用版本较小的覆盖(直接删除改后缀名) 经验1:如果Commit Failed!就不要点了ok继续按update了,先把自己的代码复制到一边,再把那个文件revert,再update,再把放在一边的文件重命名复制到相同文件夹下,选中两个冲突的文件,TortoiesSVN->diff,左边是最新的代码,右边的是我的,解决冲突之后两个人最好都update一下。 经验2:与历史记录比对:show log之后,同时选中两个版本(比如现在到了第10版,那么要10/9先比较,看看有没有差异,没有差异,则比较9/8版,如果仍没有差异,以此类推继续比较) Compare revisions查看全部
举报