SVN

From FUDforum Wiki
Jump to: navigation, search

This article explains how to checkout the very latest version of FUDforum's source code from SVN (subversion) to develop new features, patches, or to follow the development activity.

SVN is a concurrent version control system which enables one or more users to collaborate in developing and maintaining a hierarchy of files and directories while keeping a history of all changes. Subversion only stores the differences between versions, instead of every complete file. Subversion also keeps a log of who, when, and why changes occurred.

Contents

SVN installation and configuration

The first step is to install subversion on your system (the SVN client software, the server software is not required).

You’ll need to add a couple of config settings to your SVN config file. If you are on Windows, edit:

C:\Documents and Settings\YourUserName\Application Data\Subversion\config

On Linux or Mac OS X, edit:

~/.subversion/config

Locate [miscellany] and enable-auto-props in the file. Make sure that they are uncommented (remove # from beginning of line), otherwise add them:

[miscellany]
enable-auto-props = yes

Add or modify the following entries below [auto-props]:

[auto-props]
# Text file properties
*.js = svn:eol-style=native;svn:keywords=Id
*.css = svn:eol-style=native;svn:keywords=Id
*.php = svn:eol-style=native;svn:keywords=Id
*.plugin = svn:eol-style=native;svn:keywords=Id
*.inc = svn:eol-style=native;svn:keywords=Id
*.sql = svn:eol-style=native;svn:keywords=Id
*.tbl = svn:eol-style=native;svn:keywords=Id
*.ini = svn:eol-style=native;svn:keywords=Id
*.hlp = svn:eol-style=native;svn:keywords=Id
*.inc.t = svn:eol-style=native;svn:keywords=Id
*.t = svn:eol-style=native;svn:keywords=Id
*.tmpl = svn:eol-style=native;svn:keywords=Id
msg = svn:eol-style=native;svn:keywords=Id
README = svn:eol-style=native;svn:keywords=Id
UPGRADE_README = svn:eol-style=native;svn:keywords=Id
CREDITS = svn:eol-style=native;svn:keywords=Id
COPYING = svn:eol-style=native;svn:keywords=Id
# Image properties
*.png = svn:mime-type=image/png
*.gif = svn:mime-type=image/gif
*.jpg = svn:mime-type=image/jpeg
*.jpeg = svn:mime-type=image/jpeg

FUDforum's source code

Execute the following command to check-out a copy of FUDforum's source code to your system:

svn co https://svn.code.sf.net/p/fudforum/code/trunk/ fudforum

If you require write access to commit changes to the repository, create a SourceForge account and apply for commit access.

Review your changes before committing them:

svn diff

To check-in code after making changes:

svn commit -m "description of your change"

To tag a new release:

svn commit -m "Prepare for the 3.0.3RC2 release"
svn copy https://svn.code.sf.net/p/fudforum/code/trunk/ https://svn.code.sf.net/p/fudforum/code/tags/fud3_0_3RC2 -m "Tag the 3.0.3RC2 release"

SVN web access

A Web SVN system is also available, which allows users to browse the SVN tree with a standard web browser. It can be accessed by navigating to: http://sourceforge.net/p/fudforum/code/

The SVN Changelog can be found at: http://sourceforge.net/p/fudforum/code/commit_browser

SVN backup instructions

Anyone can use rsync to backup FUDforum's entire SVN repository (with full history) to his/her workstation or server. In fact, we encourage people to back it up to ensure it remains available and free to all its users.

rsync -av svn.code.sf.net::p/fudforum/code/* .

Also see

Languages
Personal tools