SVN 解决冲突

2023-11-16

版本冲突原因:

假设 A、B 两个用户都在版本号为 100 的时候,更新了 kingtuns.txt 这个文件,A 用户在修改完成之后提交 kingtuns.txt 到服务器, 这个时候提交成功,这个时候 kingtuns.txt 文件的版本号已经变成 101 了。同时B用户在版本号为 100 的 kingtuns.txt 文件上作修改, 修改完成之后提交到服务器时,由于不是在当前最新的 101 版本上作的修改,所以导致提交失败。

我们已在本地检出 runoob01 库,下面我们将实现版本冲突的解决方法。

我们发现 HelloWorld.html 文件存在错误,需要修改文件并提交到版本库中。

我们将 HelloWorld.html 的内容修改为 "HelloWorld! http://www.runoob.com/"。

root@runoob:~/svn/runoob01/trunk# cat HelloWorld.html 
HelloWorld! http://www.runoob.com/

用下面的命令查看更改:

root@runoob:~/svn/runoob01/trunk# svn diff 
Index: HelloWorld.html
===================================================================
--- HelloWorld.html     (revision 5)
+++ HelloWorld.html     (working copy)
@@ -1,2 +1 @@
-HelloWorld! http://www.runoob.com/
+HelloWorld! http://www.runoob.com/!

尝试使用下面的命令来提交他的更改:

root@runoob:~/svn/runoob01/trunk# svn commit -m "change HelloWorld.html first"
Sending        HelloWorld.html
Transmitting file data .svn: E160028: Commit failed (details follow):
svn: E160028: File '/trunk/HelloWorld.html' is out of date

这时我发现提交失败了。

因为此时,HelloWorld.html 已经被 user02 修改并提交到了仓库。Subversion 不会允许 user01(本例使用的 svn 账号)提交更改,因为 user02 已经修改了仓库,所以我们的工作副本已经失效。

为了避免两人的代码被互相覆盖,Subversion 不允许我们进行这样的操作。所以我们在提交更改之前必须先更新工作副本。所以使用 update 命令,如下:

root@runoob:~/svn/runoob01/trunk# svn update
Updating '.':
C    HelloWorld.html
Updated to revision 6.
Conflict discovered in file 'HelloWorld.html'.
Select: (p) postpone, (df) show diff, (e) edit file, (m) merge,
        (mc) my side of conflict, (tc) their side of conflict,
        (s) show all options: mc
Resolved conflicted state of 'HelloWorld.html'
Summary of conflicts:
  Text conflicts: 0 remaining (and 1 already resolved)

这边输入"mc",以本地的文件为主。你也可以使用其选项对冲突的文件进行不同的操作。

默认是更新到最新的版本,我们也可以指定更新到哪个版本

svn update -r6

此时工作副本是和仓库已经同步,可以安全地提交更改了

root@runoob:~/svn/runoob01/trunk# svn commit -m "change HelloWorld.html second"
Sending        HelloWorld.html
Transmitting file data .
Committed revision 7.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SVN 解决冲突 的相关文章

  • 无法连接到 Wordpress SVN 服务器来更新存储库

    好的 今天早上由于某种原因 我无法连接到 Wordpress SVN 存储库并执行基本的 svn 命令 例如checkout update 以下是正在发生的情况的示例 svn co http svn automattic com wordp
  • 使用 reposurgeon 将 svn repo 转换为 git

    我正在尝试使用 svn repo 转换为 git再生外科医生 http www catb org esr reposurgeon 这是我所做的 有一个具有 svn 名称 gt git 名称映射的 repo map 文件 svnadmin d
  • 是否可以链接 SVN 存储库文件,以便一个文件实际上是对另一个存储库文件的引用?

    我可以看到这个概念有一些潜在的困难 但想法是 我更改存储库 A 中的文件并提交 存储库 B 有一个文件是存储库 A 中文件的链接 我在存储库 B 的工作副本中单击文件上的更新 然后从存储库 A 接收更新的文件 是的 无论如何对于目录 See
  • SVN提交失败,访问被禁止

    最近我面临着提交SVN的问题 我使用的SVN服务器是VisualSVN Server 2 5 9 客户端是TortoiseSVN 1 7 12 起初 一个用户在将文件提交到 SVN 时遇到问题 但该用户仍然可以访问存储库并下载更新 第二台
  • 检查没有 .svn 文件的 svn 存储库

    我的专用服务器 Centos 5 5 上有一个 svn 存储库 位于 var svn myRepository 我只想将这些文件复制到我的生产文件夹 var www myWebapp 中 据我了解 SVN 我只能在本地项目文件夹上使用 sv
  • 在 Ubuntu 上通过 Apache Web 服务器和 DAV 启用 Subversion 访问

    我的家庭网络上有一台运行 Ubuntu 20 的 PC 我想将其用作我家本地网络中的 Subversion 服务器 我安装了 Apache Web 服务器并安装了 Subversion 现在我想使用 HTTP DAV 协议通过 Apache
  • 如何修复损坏的本地 Subversion 工作副本?

    我通常使用 git 对 Subversion 的基础知识知之甚少 所以请保持温柔 我在 Windows 7 上使用 TortoiseSVN SVN 客户端最近宣布需要升级 所以我就这么做了 所有文件都丢失了源代码管理图标 并且资源管理器中出
  • 在 Windows 上使用的 Subversion Server

    哪种 Subversion SVN Server 会建议新手开始使用 Windows Server 操作系统 我想我将在客户端上使用 TortoiseSVN 并且主要进行 NET 开发 UPDATE 很好的建议 我根据投票选择我的答案 我会
  • 如何在Windows控制台中递归使用“svn add”?

    当我跑步时 svn st 在我的工作副本上我得到一些 位于工作副本根目录的子目录中的条目 我想将它们全部添加到存储库中 我尝试 svn add force and svn add force 但它不起作用 工作方案 svn add dept
  • 在 PHP 页面中嵌入 svn 修订号的简单方法?

    注意到这个页面的右下角有 SVN 修订 ID 了吗 我假设这是动态的 我很乐意将其添加到我的一些网站中 就像源代码中的注释一样 以确保代码推送顺利进行 注意 您还可以假设相关站点的工作目录是相关存储库的 svn checkout Edit
  • 如何从 Perl 中的 Subversion 预提交挂钩访问提交的文件?

    我需要执行以下操作 用 Perl 编写预提交钩子 Hook 应检查所有提交的文件是否存在某些文本 如果未找到该文本则失败 基本上 我需要一个读取正在提交的文件的 Perl 钩子示例 我真的在寻找一些代码量最少的优雅解决方案 笔记 钩子应该使
  • 如何配置hudson忽略指定SVN文件夹下的更改?

    我正在寻找一种方法来忽略 Hudson 中指定 SVN 文件夹下的更改 这与 TeamCity 中的排除文件夹和 CC Net 中的过滤器相同 我在SVN GUI配置下没有找到任何配置选项 在 Hudson 1 334 中 在构建配置中的
  • tmatesoft.svn.core.SVNAuthenticationException:svn:E170001

    我们正在一个遗留项目 maven 中工作来设置devop 詹金斯首发 Jenkins 构建现在没有问题 但是 在将 sonarqube 与 jenkins 集成时 我们收到以下错误 ERROR Error during SonarQube
  • git-svn SVN 作者文件的相对路径?

    我已经使用 git svn 从工作中克隆了一个 SVN 存储库 在最初的克隆过程中 我提供了一个 SVN 作者文件 当我进行初始克隆时 git 设置了authorsfile作为绝对路径 但是 我在工作机器和笔记本电脑上保留了这个 git 存
  • Subversion 中所有版本化文件的列表? (按名称删除文件)

    办公室里的一些聪明人设法提交了一大堆 备份 文件 它们以 到我们的颠覆服务器 我最好使用一些基本的 bash 脚本来删除这些文件 而不是手动浏览存储库 有什么方法可以获取目录中所有 subversion 版本控制文件的列表 以便我可以进行一
  • Ubuntu + SVN:无法打开请求的 SVN 文件系统

    我知道这个问题已经被问过很多次了 我相信我明白答案 但我仍然没有运气 我都尝试过one repo and multiple repos配置 两者都有相同的问题 因此 对于我感兴趣的配置
  • 使用 Subversion 进行部分提交

    鉴于我做的案例两个独立的变化 in one文件 例如 添加了一个新方法并更改了另一个方法 我经常不想提交这两项更改 因为one提交 但作为two独立承诺 在 git 存储库上我会使用互动模式 of git 添加 1 http linux d
  • 持续集成颠覆

    抱歉 如果这个问题的答案已经存在 我还没有找到 我是网络开发团队的成员 我们维护一个网络门户 发布管理与 Subversion 配合使用 这就是我向门户添加新功能时的工作方式 通过复制 Trunk 创建新的 Branch 在那个分支发展 定
  • 如何在 SVN 中分支单个文件?

    分支的颠覆概念似乎专注于创建整个存储库的 不稳定 分支 并在其上进行开发 是否有一种机制可以创建单个文件的分支 对于用例 请考虑具有多个特定于平台的源代码 c 实现的通用头文件 h 这种类型的分支是永久性的 所有这些分支都将不断发展 偶尔会
  • Mercurial 和 SVN 并排在同一工作目录中?

    我们的环境目前使用SVN 我想更频繁地提交 但我不想破坏任何主要分支 就我个人而言 我比 SVN 更喜欢 Mercurial 如果我在 SVN 工作副本中初始化一个存储库 如果我只是定期提交到 Mercurial 存储库并将工作修订提交到

随机推荐

  • Python爬虫之入门保姆级教程,学不会我去你家刷厕所

    今天这个教程采用最简单的爬虫方法 适合小白新手入门 代码不复杂 文章目录 今天这个教程采用最简单的爬虫方法 适合小白新手入门 代码不复杂 首先打开咋们的网站 一 导入相关库 requests库 二 相关的参数 url headers 三 向
  • 解决Mac安装LightGBM报错LightGBM and gcc 8 in MacOS: Library not loaded

    Github Issue上有一个解决方法 但是博主失败了 https github com Microsoft LightGBM issues 1369 以下是我的解决方法 博主解决方法 首先卸载 pip uninstall lightgb
  • 帝国CMS微信小程序服务器端接口API

    帝国CMS微信小程序服务器端接口API 100个左右接口详细请看 https www guiboweb com wxapi html 使用说明 使用示例 demo 安全验证 security 新闻模型 新闻列表与搜索 list 新闻内容 a
  • QT 设置窗口阴影,设置窗口圆角

    QT开发过程中 添加过自定义标题栏后 因为设置了 setWindowFlags Qt FramelessWindowHint 属性 widget界面后面阴影没有了 现在使用paint的方法绘制阴影和窗口圆角 一方面能设置阴影 一方面可解决设
  • 【java基础】包装类,自动装箱和自动拆箱

    文章目录 基本介绍 包装类 自动装箱 自动拆箱 包装类注意事项 包装类比较 包装器内容不可变 基本介绍 有时 需要将int这样的基本类型转换为对象 所有的基本类型都有一个与之对应的类 例如 Integer类对应基本类型int 通常 这些类称
  • python数据挖掘分析案例python_吴裕雄 数据挖掘与分析案例实战(4)——python数据处理工具:Pandas...

    导入模块 import pandas as pd import numpy as np 构造序列 gdp1 pd Series 2 8 3 01 8 99 8 59 5 18 print gdp1 取出gdp1中的第一 第四和第五个元素 p
  • verilog 四舍五入_IEEE 754 round-to-nearest-even Verilog代码

    IEEE 754 round to nearest even IEEE 754浮点数标准里面 对于取整的规定 浮点数的舍入任何有效数上的运算结果 通常都存放在较长的暂存器中 当结果被放回浮点格式时 必须将多出来的位元丢弃 有多种方法可以用来
  • el-checkbox中使用indeterminate 状态

    indeterminate 属性用以表示 checkbox 的不确定状态 一般用于实现全选的效果
  • 数学建模列题整理2

    微分方程组的数值模拟 例 某湖泊中有机物新城代谢系统模型的状态方程组 时间 t 是以年为单位 Xs 表示 t 时刻太阳提供的能量 Xp 表示 t 时刻植物生长的数 量 Xh 表示吞食植物的虫类生成数量 Xr 为 t 时刻食虫植物的生长数量
  • 9宫格for循环

    9宫格for循环 总数 NSUInteger totalCount 9 总列数 NSUInteger columnMaxCount 6 总行数 NSUInteger row totalCount columnMaxCount totalCo
  • 解决'webpack-dev-server --inline --progress --config build/webpack.dev.conf.js'

    我的报错 webpack dev server inline progress config build webpack dev conf js 报错截图 解决方法 1 在终端运行指令 npm install webpack dev ser
  • 解决vue图片不刷新问题:浏览器缓存与缓存控制头的终极对决

    在现代Web开发中 许多开发者都曾经遇到过一个令人困扰的问题 当图片URL没有变化但图片内容却发生了变化时 浏览器似乎不会主动刷新图片 从而导致显示旧的内容 这个问题在网站和应用中的图片更新时尤为突出 可能会影响用户体验和页面正确性 在这篇
  • Sourcetree的分支创建与合并

    一 Sourcetree简单介绍 通过Git可以进行对项目的版本管理 但是如果直接使用Git的软件会比较麻烦 因为是通过一条一条命令进行操作的 Sourcetree则可以与Git结合 提供图形界面 使用会方便很多 Git和Sourcetre
  • IDM 6.4.1逆向分析笔记

    环境准备 安装过程不做说明 1 x64dbg 官网地址 https x64dbg com 2 火绒剑 官网地址 https www huorong cn SPY 下载地址 https github com westoncampbell Sp
  • 小程序全局接口文件中限制loading动画在指定页面不显示

    默认加载动画是这样 我这里使用的方法是获取到指定页面的实例对象 然后对他页面地址进行判断 当不是指定页面时才去执行全局的加载动画 先把接口暴露出去 测试接口 var baseURL https aaa bbb cn api 预发布接口 va
  • ftp连接:读取目录列表失败

    本文转载自 http blog csdn net lgm252008 article details 7691182 连接的错误提示 状态 连接建立 等待欢迎消息 返回 220 vsFTPd 2 0 1 命令 USER xiaozhuren
  • 聊一聊会话编程

    HttpSession接口中常用方法 会话的创建 销毁的方法 会话与请求的区别 什么是会话 客户端向服务器发送请求 服务器端接收请求并生成响应返回客户端 客户端对服务器端这样一次连续的调用过程 被称为会话 seccion 登陆访问控制 某些
  • 如何在linux服务器部署sonar服务?

    文章目录 前言 一 上传sonar插件 二 设置sonar插件的权限 三 启动插件 四 配置环境变量 前言 sonar服务是代码质量扫描的工具 我们如何利用sonar进行代码质量扫描还有在linux服务器上部署呢 下面这篇文章详细的记录了我
  • 【Python基础知识整理】

    一 Python的基本信息 1 Python的起源 Python的创始人是吉多 范罗苏姆 Python的创作过程 吉多对于Python的定位 2 Python的基本工作机制 一个用编译性语言比如C或C 写的程序可以从源文件 即C或C 语言
  • SVN 解决冲突

    版本冲突原因 假设 A B 两个用户都在版本号为 100 的时候 更新了 kingtuns txt 这个文件 A 用户在修改完成之后提交 kingtuns txt 到服务器 这个时候提交成功 这个时候 kingtuns txt 文件的版本号