Código de ramificación para diferentes plataforms en SVN

Nota: mi código está escrito en flash, pero este es un problema relacionado con SVN y no es específico de flash.

Tengo una biblioteca de código dirigida a Flash Player 9 almacenada en un repository SVN. Quiero crear una versión modificada del código dirigido a Flash Player 10.

¿Cuáles son las mejores prácticas para mantener ambas versiones del código? ¿Debo crear una twig para la versión FP10 y mantener ambas por separado o hay algún otro método preferido? Idealmente, me gustaría poder corregir errores comunes para ambas bases de código simultáneamente.

Estás en lo correcto … esto es para lo que se usa la ramificación. Si realiza una corrección en una twig, puede aplicarla a la otra twig mediante svn merge .

Ejemplo:

 svn checkout svn: // ruta / a / fp9branch workingCopy
 cd workingCopy
 # hacer una corrección
 svn commit --message "Corregido error con el frobbitz".
 # Revisión comprometida 42.
 svn switch svn: // ruta / a / fp10branch
 svn merge --change 42 svn: // path / to / fp9branch

Ahora ha aplicado la corrección a la fp10branch y puede

 svn commit --message "Corregido error frobbitz para FP10".

método alternativo es usar el método CONFIG ::, funciona como #if defined () en C / C ++

sin embargo, necesitaría agregar manualmente esta opción de compilation a la línea de compilation. Si no, genera un error de compilation (no se puede reconocer la label)

Usando este método, no es necesario crear una twig en SVN.

Consulte la documentation de Flex para get más información.

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