These steps show how to create a new release for your analysis and how do bind all the needed packages. This requires that there is already a package for your analysis in the repository. <> == Creating the release directory == First start to create a new directory for your analysis under the release directory and create the trunk inside. If you want you can also create a tags directory. {{{ svn mkdir svn+ssh://svn.cern.ch/reps/desyatfw/CommonAnalysis/Release/MyAnalysis svn mkdir svn+ssh://svn.cern.ch/reps/desyatfw/CommonAnalysis/Release/MyAnalysis/trunk svn mkdir svn+ssh://svn.cern.ch/reps/desyatfw/CommonAnalysis/Release/MyAnalysis/tags }}} Now cd to a local directory where you want your release to be downloaded and check out the newely created release from trunk {{{ svn co svn+ssh://svn.cern.ch/reps/desyatfw/CommonAnalysis/Release/MyAnalysis/trunk MyAnalysis }}} == Incorporate the needed packages == The next step is to create the svn hooks to all the packages you need for your analysis. For this change into the checked out release directory and call {{{ cd MyAnalysis svn propedit svn:externals . }}} This will open your preferred editor where you can specify the different svn hooks, e.g.: {{{ SFrame https://sframe.svn.sourceforge.net/svnroot/sframe/SFrame/tags/SFrame-03-04-13 Common/D3PDVariables svn+ssh://svn.cern.ch/reps/desyatfw/CommonAnalysis/Common/D3PDVariables/trunk Top/CommonSelection svn+ssh://svn.cern.ch/reps/desyatfw/CommonAnalysis/Top/CommonSelection/trunk Top/MyAnalysisPackage svn+ssh://svn.cern.ch/reps/desyatfw/CommonAnalysis/Top/MyAnalysisPackage/trunk ....... }}} It is possible to set specific tags of the different packages instead of using the trunk. You can also have a look into the external hooks of other releases on how it is done there with: {{{ svn propget svn:externals . }}} Furthermore don't forget that you need the setup.sh macro which sets up the SFrame environment and creates some useful macros for compilation. You could simply copy the one from the TopCommonSelection release and afterwards add it to svn. {{{ svn add setup.sh }}} Now perform an update, so that svn fetches all specified packages, and do a commit afterwards. {{{ svn up svn commit }}} Within your MyAnalysis release you can also add directories and files directly, e.g. batch job submission scripts. == Test your release == In the end you should make sure that you didn't forget any required package and that the analysis works. As usual, first compile all packages: {{{ source setup.sh source make-all.sh }}} If this works fine, the best is to run your analysis on a small test sample in order to check that all packages are loaded and nothing is missing.