Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>I see two approaches to meet your requirement</p> <p>I will treat your "/" as "trunk" btw. as it wouldnt make sense for creating tags otherwise ;)</p> <p><strong>copy from revision approach</strong></p> <ul> <li>svn copy <a href="http://myrepos/trunk/@x" rel="nofollow">http://myrepos/trunk/@x</a> http://myrepos/tags/1.0/</li> <li>svn copy <a href="http://myrepos/project1/@y" rel="nofollow">http://myrepos/project1/@y</a> http://myrepos/tags/1.0/project1/</li> <li>svn copy <a href="http://myrepos/project2/@z" rel="nofollow">http://myrepos/project2/@z</a> http://myrepos/tags/1.0/project2/</li> </ul> <p><em>advantages</em></p> <ul> <li>easy to understand</li> </ul> <p><em>disadvantage</em></p> <ul> <li>documentation overhead (What is in this tag?)</li> <li>selecting of revisions possible source for error</li> <li>overhead scales lineary with number of projects</li> </ul> <p><strong>mark as stable approach</strong></p> <p>do this step once in your trunk:</p> <ul> <li>create a file in an editor and call it "externals"</li> <li><p>add these two lines:</p> <p>project1 <a href="http://myrepos/1.0/project1/tags/to-be-released" rel="nofollow">http://myrepos/1.0/project1/tags/to-be-released</a></p> <p>project2 <a href="http://myrepos/1.0/project2/tags/to-be-released" rel="nofollow">http://myrepos/1.0/project2/tags/to-be-released</a></p></li> <li><p>svn propset svn:externals -F externals .</p></li> </ul> <p>Whoever checks out your main app will now get the latest versions of your projects <em>when they were ready</em> for release.</p> <p>development teams for the projects do these steps whenever a new release is ready. They can decide to use the revision number or simply tag HEAD when they are ready:</p> <ul> <li>svn delete <a href="http://myrepos/1.0/project1/tags/to-be-released" rel="nofollow">http://myrepos/1.0/project1/tags/to-be-released</a></li> <li><p>svn copy <a href="http://myrepos/project1/@y" rel="nofollow">http://myrepos/project1/@y</a> http://myrepos/1.0/project1/tags/to-be-released</p></li> <li><p>svn delete <a href="http://myrepos/1.0/project2/tags/to-be-released" rel="nofollow">http://myrepos/1.0/project2/tags/to-be-released</a></p></li> <li>svn copy <a href="http://myrepos/project2/@z" rel="nofollow">http://myrepos/project2/@z</a> http://myrepos/project2/tags/to-be-released</li> </ul> <p>on release/tag-day:</p> <ul> <li>svn copy <a href="http://myrepos/trunk" rel="nofollow">http://myrepos/trunk</a> http://myrepos/tags/1.0</li> </ul> <p>You can use a revision number too. Problem here is that your application layout indicates that project1 and 2 reside <em>inside</em> your main application "/". If that is not the case tagging and using fixed taggs for release-integration can be verry smooth. ("/" would get sub-tagged too)</p> <p>real world example:</p> <p>svn propget svn:externals <a href="http://svn.silverstripe.com/open/phpinstaller/tags/2.4.2/" rel="nofollow">http://svn.silverstripe.com/open/phpinstaller/tags/2.4.2/</a></p> <p><em>advantages</em></p> <ul> <li>documentation is a bit easier via svn history and revision graph</li> <li>tagging overhead scales and remains constant on main tag-day</li> </ul> <p><em>disadvantages</em></p> <ul> <li>more complicated to setup &amp; understand (whole team has to)</li> </ul> <p>Tags are just "symlinks" to revision so both scenarios use the same principle. Tagging feels more explicit though. This whole scenario is not a 1:1 copy-and-it-works suggestion but more of a generic model.</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload