我是一个SVN的初学者。我的SVN目录结构如下:
|-trunk
|-file1.php
|-file2.php
|-branches
|-branch_1
|-file1.php
|-file2.php
|-branch_2
|-file1.php
|-file2.php
在主目录下我有我的应用程序的主要版本。我为不同客户创建了两个分支,这些分支仅在某些文件中进行修改。当我发现一些核心错误时,我会在主目录下进行修复。例如,我修改了
trunk
目录中的file1.php
。我想将更改应用于所有分支中名为file1.php
的文件。我有点困惑。在Subversion版本控制中,我找到了以下解释。
引用: Subversion的存储库具有特殊的设计。当您复制一个目录时,您不需要担心存储库变得非常庞大——Subversion实际上不会复制任何数据。相反,它创建一个指向现有树的新目录条目。
所以我认为,当我提交对
trunk\file1.php
文件的更改时,它将自动应用于其他branches
目录中的file1.php
文件,因为我没有对这些文件进行任何更改。如何将来自主目录的更改应用于所有分支?我尝试使用
svn merge
,像这样:svn merge -r 31:32 http://mysvnserver.com/project/branches/branch_1
但我并没有做任何改变(svn diff -r 31:32
返回了我所有的更改)。