svn - 无法摆脱 svn 合并冲突
问题描述
我们有一个主要项目的分支,我们不断合并到主干中。
不同的开发人员正在挑选他们自己的开发来分别合并,以便他们可以对应特定的 JIRA 问题。
我们不时地在主干根目录中使用以下命令来找出尚未合并的内容:
svn merge --dry-run svn://svnhost/repo/app/branch
通常,如果所有内容都已合并,则不会显示任何输出。
但是,这现在给我们一条消息,说“解决所有冲突,重新运行合并以应用剩余的未合并修订版”。
我曾尝试合并所有显示为冲突的内容并解决这些冲突,但它们不断出现,但修订号不同。
这是上述命令的完整输出(目录和文件已重命名):
--- Merging r43608 through r43615 into 'directory1':
C directory1/file1
C directory1/file2
C directory1/file3
--- Merging r43609 through r43615 into 'directory2':
C directory2/file1
C directory2/file2
C directory2/file3
--- Merging r43605 through r43615 into 'directory3':
C directory3/file1
C directory3/file2
C directory3/file3
C directory3/file4
C directory3/file5
C directory3/file6
--- Merging r43603 through r43615 into 'directory4':
C directory4/file1
C directory4/file2
C directory4/file3
--- Merging r43603 through r43615 into 'directory5':
C directory5/file1
C directory5/file2
C directory5/file3
C directory5/file4
U directory5/file5
C directory5/file6
C directory5/file7
C directory5/file8
C directory5/file9
C directory5/file10
C directory5/file11
G directory5
--- Merging r43603 through r43615 into 'directory6':
U directory6/file1
C directory6/file2
C directory6/file3
C directory6/file4
C directory6/file5
--- Merging r43517 through r43615 into 'directory7':
C directory7/file1
C directory7/file2
A directory7/file3
C directory7/file4
A directory7/file5
--- Merging r43607 through r43615 into 'directory8/file1':
G directory8/file1
--- Merging r43534 through r43615 into 'directory9':
C directory9/file1
C directory9/file2
C directory9/file3
C directory9/file4
C directory9/file5
C directory9/file6
C directory9/file7
C directory9/file8
C directory9/file9
C directory9/file10
A directory9/file11
C directory9/file12
C directory9/file13
A directory9/file14
C directory9/file15
C directory9/file16
C directory9/file17
C directory9/file18
C directory9/file19
U directory9/file20
C directory9/file21
C directory9/file22
C directory9/file23
C directory9/file24
C directory9/file25
C directory9/file26
C directory9/file27
C directory9/file28
C directory9/file29
C directory9/file30
C directory9/file31
C directory9/file32
G directory9
--- Merging r43517 through r43615 into 'directory10/f':
C directory10/f/file1
--- Merging r43517 through r43615 into 'directory10/l':
U directory10/l/file1
Summary of conflicts:
Text conflicts: 23
Tree conflicts: 39
svn: E155015: One or more conflicts were produced while merging r41855:43503 into
'/clean_trunk' --
resolve all conflicts and rerun the merge to apply the remaining
unmerged revisions
有人能告诉我这个输出试图告诉我们什么吗?
此输出中列出的许多目录/文件以及 svn merge-info 属性已经被合并,所以我不知道为什么它说它们没有被合并。
如果我使用它最后提到的修订范围执行合并试运行,那么我什么也得不到:
svn merge -r41855:43503 --dry-run svn://svnhost/repo/uniworks/tags/uniworks-2.2.6/
我们是否需要应用所有合并冲突并在一次提交中解决它们?
我在这里拔头发!
解决方案
SVN 发生冲突时,使用修订名称创建临时文件作为备份,例如文件名r123 .txt 和文件名r345 .txt
一旦你手动合并(解决)冲突,你需要告诉 SVN,通过命令删除这些文件:
svn resolved
有人能告诉我这个输出试图告诉我们什么吗?
“C”代表冲突,“U”代表更新。
我们是否需要应用所有合并冲突并在一次提交中解决它们?
是的,您需要在一次签到时将它们全部合并。否则,您的构建中可能会出现诸如未找到定义、未定义变量等错误。
推荐阅读
- php - isset($_GET(var)) 为真,即使 var 为空或未定义
- swift - Swift:Locale.current 和 Locale 之间的区别(标识符:Locale.current.identifier)
- java - 如何用 Java 编写 SQL 查询以从雪花中获取数据
- sql - 创建一个只有工作日的表,不包括周末和公共假期
- snowflake-cloud-data-platform - Snowflake PUT 命令,AUTO_COMPRESS vs gzip 压缩文件性能
- python - 使用 Selenium 按下“更多项目”按钮后从网站上的产品中提取信息
- terraform - Terraform Azure 自动化安装 SqlServer 模块
- c# - System.Text.Json.JsonException:'F' 是值的无效开始。(C# 中的套接字)
- javascript - 读取 FileSystemEntry 中的条目的正确方法
- pine-script - Tradingview Pine 脚本 - 设置最小止损