Tags and Branches

From GeeklogWiki
Revision as of 17:32, 13 January 2007 by Dirk (talk | contribs) (Some CVS information (tags and branches, checking out))

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Geeklog 1.x CVS

General information

See geeklog.net


Tags and Branches

  • The CVS main trunk (aka HEAD) always contains the Geeklog version currently under development.
  • Once a Geeklog release is made, that version will be tagged so that it is possible to check out the exact version of all the files that were shipped in a specific release.
  • Branches are created off of CVS tags for bugfix and security releases, if necessary.


Naming conventions

A CVS tag for a specific release uses the following naming convention:

  • geeklog_x_y_zb1 for Geeklog x.y.zb1 (beta 1)
  • geeklog_x_y_rc1 for Geeklog x.y.zrc1 (release candidate 1)
  • geeklog_x_y_z_stable for Geeklog x.y.z (final release)

After a stable release, there will usually be a branch off of that version. The naming convention for the branch is to attach _1 ("underscore one"), i.e.

  • geeklog_x_y_z_1

Tags in the branch then follow the same naming convention as above. Additionally:

  • geeklog_x_y_zsr1 for Geeklog x.y.zsr1 (security release 1)
  • geeklog_x_y_z_1_1 for Geeklog x.y.z-1 (bugfix release 1). Note the _1_1 postfix to avoid name collision with the branch name.


Checking out

Checking out by CVS tag

To check out a specific Geeklog version, e.g. 1.3.11sr2, use:

cvs -d :ext:devname@cvs.geeklog.net:/var/cvs/Geeklog-1.x co -r geeklog_1_3_11sr2 Geeklog-1.x

(where devname is the name of the CVS account) or

cvs -d:pserver:anonymous@geeklog.net:/var/cvs/Geeklog-1.x login
cvs -z3 -d:pserver:anonymous@geeklog.net:/var/cvs/Geeklog-1.x co -r geeklog_1_3_11sr2 Geeklog-1.x

for anonymous CVS access.


Checking out a branch

Checking out a branch works exactly the same way as checking out by CVS tag, only that you specify the branch name after the -r option.

However, for a branch it is recommended to do a

cvs -q up -Pd

after the initial checkout to get rid of unused / empty directories.

Note that you should never include the A option (e.g. cvs up -PdA) as that would check out from CVS head and mess up your local repository.

Other than that, you can always use cvs up -Pd to receive any changes made on a branch (the -q option only tells CVS to be "quiet" and only print relevant information).