SVN中不同平台的分支代码

时间:2009-11-11 21:11:29

标签: actionscript-3 svn repository

注意:我的代码是用flash编写的,但这是与SVN相关的问题,并不是特定于Flash的。

我有一个针对存储在SVN存储库中的Flash Player 9的代码库。我想创建一个针对Flash Player 10的代码的修改版本。

维护两个版本代码的最佳做法是什么?我应该为FP10版本创建一个分支并单独维护它们还是有其他一些首选方法?理想情况下,我希望能够同时修复两个代码库的常见错误。

2 个答案:

答案 0 :(得分:3)

你是对的......这就是分支的用途。如果您在一个分支中进行修复,则可以使用svn merge将其应用于另一个分支。

示例:

svn checkout svn://path/to/fp9branch workingCopy
cd workingCopy
# make a fix
svn commit --message "Fixed bug with the frobbitz."
# Committed revision 42.
svn switch svn://path/to/fp10branch
svn merge --change 42 svn://path/to/fp9branch

现在您已将修复程序应用于fp10branch,您可以

svn commit --message "Fixed frobbitz bug for FP10."

答案 1 :(得分:1)

替代方法是使用CONFIG ::方法, 它的作用类似于C / C ++中的#if defined()

但是,您需要手动将此编译选项添加到编译行中。 如果不是,则会导致编译错误(无法识别标签)

使用此方法,您无需在SVN中创建分支。

查看Flex文档以获取更多信息。

private static function SomeFunc():void {
    CONFIG::DEBUG {
      // do something here if CONFIG::DEBUG is defined during compilation
      trace("hello");
    }

}