wiki:explainSvn

Version 1 (modified by Yuri Dario, 11 years ago) (diff)

How to prepare SVN structure and commit messages.

This is a simple guide for developers, to allow a common tree structure and commit messages for every package stored into the main repository.

First you need to checkout the current ports tree or at least the root directory:

svn checkout http://svn.netlabs.org/repos/ports

Here is the commit sequence for storing a new port (named xx here):

[ports] 
	mkdir xx\vendor\current.
	unpack sources into current.

[ports] 
	svn add xx
	svn commit -m "xx: initial vendor import of xx 8.12."

[ports\xx\vendor] 
	svn copy current 8.12
	svn commit -m "xx: tag current vendor version."

[ports\xx] 
	svn copy vendor/current trunk
	svn commit -m "xx: import current vendor version into trunk."

[ports\xx\trunk]
	add os2 patches, new files, etc.
	svn commit -m "xx: applied os2 patches, added new files, etc etc."

Once you have to upgrade then vendor tree to a newer version, first put it in current tree and tag the version release. Please take note of svn revision for tag operation.

To merge changes into the trunk, supposed 318 is the latest revision, use

[ports\xx] 
	svn merge vendor/8.12@318 vendor/8.13@318 trunk
	svn commit -m "xx: update trunk to 8.13".