SVN (Trunk/Branch/Tag) - II

27 May 2008

In this post, I will continue exploring SVN concepts.

Another important concept is that of tags. Tags (as Branches) are ordinary directories that are created by copying. The thing is, what meaning you attach to it. The reason of creating a directory as a “tag” is to create a snapshot. As long as nobody ever commits to the directory, it forever remains a snapshot. That’s the difference between branch and tag. In tag, developers do not commit any thing. Its sort of release.

The typical way how SVN is used in software development and maintenance is as follows:
procedure looks like this:

Day-to-day changes are committed to /trunk which involves new features and bugfixes.

Then the management thinks that the project is ready to be released, the trunk is copied to a “release” branch (/branches/1.0). A team of software testers starting testing the release branch and the other team continues adding new features in the trunk branch for future releases. If bugs are found, corrections are made and ported in branch and in trunk as well.

At a stage, the branch/1.0 will be tagged and released. It will be tagged to /tags/1.0.0 as a reference snapshot. This will be packaged and released to customers.

The branch is now maintained over time. The bugfixes are continued to be ported into branch and trunk. When enough bugfixes have accumulated, management may decide to do a 1.0.1 release: /branches/1.0 is copied to /tags/1.0.1, and the tag is packaged and released.

del.icio.us:SVN (Trunk/Branch/Tag) - II  digg:SVN (Trunk/Branch/Tag) - II  spurl:SVN (Trunk/Branch/Tag) - II  wists:SVN (Trunk/Branch/Tag) - II  simpy:SVN (Trunk/Branch/Tag) - II  newsvine:SVN (Trunk/Branch/Tag) - II  blinklist:SVN (Trunk/Branch/Tag) - II  furl:SVN (Trunk/Branch/Tag) - II  reddit:SVN (Trunk/Branch/Tag) - II  fark:SVN (Trunk/Branch/Tag) - II  blogmarks:SVN (Trunk/Branch/Tag) - II  Y!:SVN (Trunk/Branch/Tag) - II  smarking:SVN (Trunk/Branch/Tag) - II  magnolia:SVN (Trunk/Branch/Tag) - II  segnalo:SVN (Trunk/Branch/Tag) - II  gifttagging:SVN (Trunk/Branch/Tag) - II

Top Of Page | Trackback

If you found this page useful, consider linking to it. Simply copy and paste the code below into your web site.

It will look like this: SVN (Trunk/Branch/Tag) - II

Leave a Reply