SVN合并(分支到主干)给了我很多麻烦。现在我不是它的专家,这是问题的一部分(然后我不应该成为它的专家......因为这是重点,它应该让我的生活更轻松)。无论如何,我有一个快速开发的框架,很多时候文件夹/文件被删除/重命名。删除/重命名本身在SVN中是不直观的(无论如何通过乌龟),但我会让它滑动。
合并时出现问题。如果我删除/重命名了文件或目录,则会出现树冲突。有时合并无法将文件添加到已添加到分支的主干,并继续告诉我合并成功(并且没有添加任何文件)。我现在已经使用手动合并这些问题分支。
除非重命名或删除,否则手动合并很容易。我也会将重命名视为删除,因为最终它就是它的真实含义。当我进行手动合并时,有没有办法自动删除行李箱中留下的文件夹和文件?
这就是我进行手动合并的方式
重申一下,删除重命名/删除的文件/文件夹的难点是进行比较。有更简单的方法吗?
谢谢!
P.S:我正在考虑改用mercurial,因为合并不是一项艰巨的任务,因为它在SVN中,or so I have heard ......这个说法是否有任何重要性?
答案 0 :(得分:0)
当我进行这种手动合并时(例如,当此项目没有公共版本控制时,重复从某个外部项目重新导入源代码时),我通常编写一个执行树比较的脚本。它将列出两个树中的所有文件,并比较这些列表。与subversion一起提供的一个这样的脚本是svn_load_dirs。
至于您观察到添加和删除的自动合并失败:如果您想获得帮助,请将其作为单独的问题发布。可能是你做错了 - 这应该有效。