我正在使用subversion来管理我的源代码,但是我经常遇到问题,每当我重命名文件夹并修改该文件夹中的文件时,当我尝试合并时,subversion会变得混乱。
我希望了解其他人如何处理这种冲突。
而不是试图准确解释我为解决问题所做的工作,这里有一个脚本可以产生我所询问的冲突:
在安装了subversion的Linux计算机上运行此脚本,它会产生冲突。确保文件夹/ tmp / svn /不包含任何内容,否则此脚本将销毁文件夹中的任何内容:
#!/bin/bash
svn --version
mkdir /tmp/svn
cd /tmp/svn/
rm -rf /tmp/svn/repo
rm -rf /tmp/svn/co
rm -rf /tmp/svn/work
svnadmin create /tmp/svn/repo/
svn mkdir file:///tmp/svn/repo/branches/ --message ' setup '
svn mkdir file:///tmp/svn/repo/trunk/ --message ' setup '
svn mkdir file:///tmp/svn/repo/tags/ --message ' setup '
svn mkdir file:///tmp/svn/repo/trunk/folder --message ' setup '
svn mkdir file:///tmp/svn/repo/trunk/fun --message ' setup '
echo date > tmp
svn import -m 'setup' tmp file:///tmp/svn/repo/trunk/folder/MyCode.txt
svn cp file:///tmp/svn/repo/trunk/ file:///tmp/svn/repo/branches/work --message 'branch'
svn co file:///tmp/svn/repo/branches/work/ work
date >> work/folder/MyCode.txt
svn commit work/ --message 'Commit file'
svn up work/
svn rename file:///tmp/svn/repo/trunk/folder file:///tmp/svn/repo/trunk/fun/folder/ --message 'rename trunk'
svn merge ^/trunk work
以下是此脚本创建的冲突:
--- Merging r7 through r9 into 'work':
C work/folder
A work/fun/folder
A work/fun/folder/MyCode.txt
--- Recording mergeinfo for merge of r7 through r9 into 'work':
U work
Tree conflict on 'work/folder'
> local dir edit, incoming dir delete upon merge
Select: (r) mark resolved, (p) postpone, (q) quit resolution, (h) help: p
Summary of conflicts:
Tree conflicts: 1
以下是我的颠覆的一些信息: svn,版本1.8.8(r1568071) 在x86_64-pc-linux-gnu
上于2014年8月13日,17:12:39编译解决此问题的正确方法是什么?
谢谢,
大卫