相信刚開始学习使用SVN的小伙伴在项目合作开发的过程中一定常常遇到一些影响到自己编写的代码的苦恼。我这里列举了几种常见的问题以及问题的解决方法:

1.误删除和误操作的问题

问题1:有A和B两个人一块合作写项目的时候,B在写代码的时候不小心更改了A写的代码文件的内容提交到了仓库,A该怎样找回自己原来的代码呢?

解决方法:

右键点击被改动的文件---->点击TortoiseSVN选项----->点击Show log选项,会出现如图所看到的的窗体,

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

然后右键点击A的记录--->点击Revert to this revision选项---在弹出的对话框中选择Revert选项。当出现这个窗体中的内容时说明恢复成功了。能够打开看一下文件里内容是否恢复到之前的内容,非常奇妙吧。

问题2:B不小心删除了A写的代码文件。而且提交了。A该怎样找回自己原来的代码文件呢?

解决方法:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

右键点击A用户check out下来的项目目录(如上图)--->点击TortoiseSVN选项----->点击Show log选项。然后找到日志中B为进行删除操作之前的代码文件,复制出来。重命名后再次提交项目就能够了。

如图:

2.多个用户同一时候改动一个从仓库中update下来的最新的文件后,晚提交的用户提交不通过的问题:

问题1:(A和B两个用户改动的内容的位置不一致)A和B两个用户都对同一个从仓库中刚update下来的文件进行改动后。B先进行了提交,A提交的时候出现错误,A应该如何处理呢?(后提交的用户会出现这样的错误截图)

错误截图:

终于文件中的内容是SVN自己主动将两个用户改动的内容合并了(SVN自己主动合并的情况要满足:两个用户改动的内容的行数不冲突)。

如图:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

解决方法:A用户找到B用户共同协商怎么处理两个人改动的代码。

问题2:(A和B两个用户改动的内容的位置同样(对同一行的内容进行了改动操作))A和B两个用户都对同一个从仓库中刚update下来的文件进行改动后。B先进行了提交。A提交的时候出现错误,A应该如何处理呢?(后提交的用户会出现这样的错误截图)

错误截图:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

多出的三个文件如图:

多出的三个文件的解释(从上往下):

第一个:

第二个:(我(A)想提交的代码)

第三个:

第四个:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

解决方法:

依据上边的三个版本号的代码,A就应该知道怎么改动代码进行提交了,先恢复到如今server中最新版本号的代码文件。如图:

再跟B进行讨论究竟怎么处理改动的代码。

问题3:假设A和B冲突的代码太多的时候。A该怎么处理呢?

当遇到如图这样的情况的时候:

解决方法

就不要进行更新了。而应该选择Cancel这一项(由于明明知道有冲突就不要给自己找麻烦了)。将自己改动后的代码文件copy一份到别的地方。然后再重命名后拷贝到原来的目录以下,

进行比对就能够找出你改动后的内容跟server中的代码的不同之处。然后就能够找B进行讨论,共同改动了。


SVN版本号管理工具使用中常见的代码提交冲突问题的解决方法的更多相关文章

  1. Git学习(一) 版本号管理工具

    Git 是一个分布式版本号控制工具.它的作者 Linus Torvalds 是这样给我们介绍 Git  -- The stupid content tracker(傻瓜式的内容跟踪器) 1. Git ...

  2. git版本号管理工具的上手

    git是一个分布式的版本号管理工具 和其它集中式版本号管理 工具相比具有下面长处: 1.能够在不联网的情况下开发 2.能够方便的建立本地分支 3.本地化的日志,高速获得信息 git命令的使用 mkdi ...

  3. SVN代码提交冲突解决方案

    SVN代码提交冲突解决方案 1.若你的代码被其他人修改并提交过了,期间你自己也修改过该文件,UPDATE的时候自己代码被覆盖. 右键——>显示日志 查看该文件的更新记录 找到需恢复的版本 右键— ...

  4. Eclipse svn代码提交冲突

    Eclipse svn代码提交冲突(转) 1.Synchronize视图下查看代码冲突 1.Incoming Mode 全部update,更新到本地2.Outgoing Mode 全部commit,提 ...

  5. Xcode中SVN不能提交.a文件的解决方法

    我是搬运工!!!方便自己使用!!! 方案一: 在mac下很多svn管理工具默认都不能上传.a文件,这让人很苦恼.从网上扒了下,用命令行可以解决此问题. 打开终端,cd 进入到需要上传的.a文件所在的文 ...

  6. Java常见的几种内存溢出及解决方法

    Java常见的几种内存溢出及解决方法[情况一]:java.lang.OutOfMemoryError:Javaheapspace:这种是java堆内存不够,一个原因是真不够(如递归的层数太多等),另一 ...

  7. win10安装PS和AI后报代码为16的错误解决方法

    win10安装PS和AI后报代码为16的错误解决方法 一.总结 一句话总结:修改兼容性和以管理员方式运行就可以了 修改兼容性 以管理员身份运行 二.PS和AI安装后报代码为16的错误解决方法介绍(转) ...

  8. IOS SVN源代码管理工具使用

    01.    源代码管理工具概述(PPT)===================================================* 源代码管理工具的作用:# 能追踪一个项目从诞生一直到 ...

  9. SVN图形管理工具-Submint

    1.安装svn及相关依赖包 yum install subversion httpd mod_dav_svn apr-util-sqlite   2.下载submin wget https://sup ...

随机推荐

  1. SpringCloud 构建微服务架构-练习

    我使用的springboot的版本为2.0.2.RELEASE,这里概念性的东西我就不粘贴复制了,百度一下 都是 一.启动Eureka注册中心服务 1.新建springboot项目,pom.xml配置 ...

  2. Ural 1004 Sightseeing Trip

    Sightseeing Trip Time Limit: 2000ms Memory Limit: 16384KB This problem will be judged on Ural. Origi ...

  3. Mysql优化之优化工具profiling

    程序员的成长之路 2016-11-23 22:42 Mysql优化之优化工具profiling 前言 mysql优化技术: mysql优化不是做一个操作就可以的优化,它包含很多的细节,需要一点一点的优 ...

  4. Qt之设置应用程序图标

    简述 应用程序图标,通常显示在应用程序的顶层窗口的左上角,通过调用QWindow:setWindowIcon()函数来实现. 为了改变可执行程序文件本身的图标,因为它被呈现在桌面上,它必须采用另一种依 ...

  5. 译:MySQL性能优化的21条最佳经验

    今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显.关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情.当我们去设计数据库表结构,对操作数据 ...

  6. Qt程序打包成exe可执行文件

    很多Qt爱好者想发布自己的Qt软件,但却发现在其他没有安装Qt SDK的机器上无法运行,这就是本文想要说明的问题.现在网上大部分软件都要发布自己开发的应用程序,都会打包到exe文件中,待安装完exe文 ...

  7. Eureka Server的REST端点

    Eureka Server的REST端点 Windows下面可以安装Curl: 使用more命令可以显示xml内容: D:\Java\IdeaProjects>more rest-api-tes ...

  8. ElasticSearch Shard——本质上是做分布式扩展,副本对于集群的稳定性有很强的影响

    什么是一个Shard? Shard就是一个Lucene Index,参照文章(深入理解Shard和Lucene Index). Index需要多少个Shard? 回答这个问题,我们需要先谈谈节点,一个 ...

  9. Redis-4-链表结构

    Redis-4-链表结构 标签(空格分隔):redis lpush key value 作用: 把值插入到链接头部 rpop key 作用: 返回并删除链表尾元素 lrange key start s ...

  10. Servlet简单计算器 2.0

    jsp 输入界面: <%@ page language="java" contentType="text/html; charset=UTF-8" pag ...