Changes between Version 18 and Version 19 of pm-svn-releases


Ignore:
Timestamp:
Apr 28, 2008 12:42:54 AM (13 years ago)
Author:
ladanyi
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • pm-svn-releases

    v18 v19  
    9191Typically, you would have a version of your code in a stable branch, say {{{stable/2.3/}}}, which you now want to make an official release.  '''Remember, it is mandatory that one can recreate exactly the same version in the future''', ''i.e.'', you should not change anything in a point release after you set it up.
    9292
    93 The {{{BuildTools}}} provide two convenient scripts that make it easy for you to create a new release from a stable branch.  In case you are using [wiki:pm-svn-externals Externals], you need to be using only references to externals in ''stable'' branches of other projects.
     93If you have no [wiki:pm-svn-externals Externals] then the simplest way is to use "svn copy" similar to the in the example above. To create release {{{2.3.2}}} from stable branch {{{2.3}}} you could use
     94
     95{{{
     96svn copy https://projects.coin-or.org/svn/YourProject/stable/2.3 \
     97           https://projects.coin-or.org/svn/YourProject/releases/2.3.2 \
     98           -m "Creating new release 2.3.2  from stable branch 2.3 (rev 533)"
     99}}}
     100
     101'''NOTE: In the commit message you should always record the subversion revision number from which you created the new branch.'''  This information is essential for merging and some other repository operations. To find out the revision number, you can use the {{{svn info}}} command.  For example, to determine the revision number in the above example, you could have used
     102
     103{{{
     104svn info https://projects.coin-or.org/svn/YourProject/stable/2.3
     105}}}
     106
     107and looked at the line that starts with "{{{Revision:}}}".
     108
     109If you do have externals (especially externals pointing to other COIN projects), or if you want to take advantage of the sanity checks in the scripts to be described, then {{{BuildTools}}} provide two convenient scripts that make it easy for you to create a new release from a stable branch.  In case you are using [wiki:pm-svn-externals Externals], you need to be using only references to externals in ''stable'' branches of other projects.
     110
     111'''NOTE: both scripts contain very subtle "bashisms", i.e., they may not run correctly unless executed using bash. The simplest way to ensure this is to specify bash as the shell to run them, e.g.,
     112{{{
     113bash BuildTools/prepare_new_release
     114}}}
    94115
    95116The first script, {{{BuildTools/prepare_new_release}}}, does the following things for you: