SVN-自动将主干合并到分支

SVN-自动将主干合并到分支,svn,version-control,tortoisesvn,branching-and-merging,Svn,Version Control,Tortoisesvn,Branching And Merging,我在SVN中有一个分支,我希望通过主干的更改保持最新。我想做的是有一个脚本或者一些每晚运行的东西来执行这个合并,然后在没有合并冲突的情况下提交分支的新版本,但是如果存在合并冲突,则以某种方式表明这一点。我发现这有点帮助,尽管它并不是万能的 我一直无法找到一种方法来确定是否存在合并冲突,而这正是我所寻找的。在脚本中,添加构建代码并在成功时提交将非常容易,但是如果没有检查合并冲突的方法,这将不会成功 谢谢你们的帮助 我遇到了与您完全相同的问题,尽管我没有尝试自动合并,因为没有太多分支,我是手动完成的

我在SVN中有一个分支,我希望通过主干的更改保持最新。我想做的是有一个脚本或者一些每晚运行的东西来执行这个合并,然后在没有合并冲突的情况下提交分支的新版本,但是如果存在合并冲突,则以某种方式表明这一点。我发现这有点帮助,尽管它并不是万能的

我一直无法找到一种方法来确定是否存在合并冲突,而这正是我所寻找的。在脚本中,添加构建代码并在成功时提交将非常容易,但是如果没有检查合并冲突的方法,这将不会成功


谢谢你们的帮助

我遇到了与您完全相同的问题,尽管我没有尝试自动合并,因为没有太多分支,我是手动完成的

无论如何,最好的选择是使用脚本。文章中链接的脚本不仅执行最后一个必需的操作:commit

我经常使用Linux,因此,如果我是你,我会使用如下shell脚本:

cd /path/to/branch
svn update #just to be sure...
svn merge --non-interactive svn://path/to/trunk
svn commit -m "Automated commit"

类似的命令可以在批处理脚本中与SVN for windows一起使用,请看一看。它将持续合并并向您发送电子邮件,告知您冲突和如何继续。

这可能是一个可行的解决方案,因为如果存在冲突,提交将失败。考虑到这一点后…如果我在提交之前尝试编译,那么如果存在合并冲突,则应该失败。然后,我可以从巡航控制系统生成故障信息。谢谢你的帮助!实际上,如果存在未解决的合并冲突,则无法提交,因此提交肯定会失败。尽管如此,您可能会尝试使用svn merge的返回值,或者通过另一个我不知道的命令检查冲突。无论如何,我忘了添加--non-interactive标志以进行合并,因为它会提示您在发生冲突时应该做什么。