SVN repository for ports

This page is WIP and far from complete. Please don't edit this page without consulting portmgr or the ports svn migration team.

Proposed SVN layout

svn.freebsd.org/ports/svnadmin
svn.freebsd.org/ports/svnadmin/conf
svn.freebsd.org/ports/svnadmin/hooks
svn.freebsd.org/ports/svnadmin/tools
svn.freebsd.org/ports/branches
svn.freebsd.org/ports/tags
svn.freebsd.org/ports/trunk
svn.freebsd.org/ports/trunk/category/port

Preparation

Task

Responsible

Contact

Comments

Check if we can run svn2cvs converter on ports

beat

There will be a svn2cvs converter

Discuss if history should be migrated to SVN

beat

We're going to migrate the history

Define SVN layout

beat

See above

Decide if we should skip some old branches

beat

See StrategyRules in http://people.FreeBSD.org/~beat/cvs2svn/cvs2svn.options

Setting up test repository in FreeBSD environment

beat

clusteradm

Test environment will be on svn.chruetertee.ch

Test acl of new repository

beat

Set up svn web frontend

beat

http://svn.chruetertee.ch/viewvc/viewvc.cgi

Determine SVN Client requirements (SVN keywords and so on)

beat

Same requirements as src/: ENHANCED_KEYWORD and FREEBSD_TEMPLATE = on

Take a look of src svn hooks and evaluate which one chould be used in ports svn

beat

First try: http://people.freebsd.org/~beat/cvs2svn/hooks.tar

Make svn2cvs converter running with ports svn

beat

clusteradm

http://people.freebsd.org/~beat/cvs2svn/export.py

Open test environment for committers to test their scripts and tools -> Send announcements to ports-developers@

beat

done

Make checkacl (base/svnadmin/tools/checkacl) more generic. Current implementation is src/ focused and sets SVN_COMMIT_ATTRIB=ports even if a ports committer commits to ports which adds an additional tag to the commit mail. Also there is no SVN_COMMIT_ATTRIB=src yet.

beat

peter?

proposed patch: http://people.FreeBSD.org/~beat/cvs2svn/checkacl.patch - Deferred (discussed with simon@): We will have our own checkacl for the migration

Check which scripts from ports/Tools/scripts are needed with svn and convert them

#scripts

Write additional hooks if needed (eg. for QAT)

beat

http://people.freebsd.org/~beat/cvs2svn/hooks.tar

Contact redports author and get redports working with svn

beat

decke

Contact portsnap author and get portsnap working with svn

beat

cperciva

Contact freshports author and it them working with svn

dvl

Get pointyhat running with svn

erwin

portmgr

http://people.freebsd.org/~erwin/updatesnap.svn.diff

If needed add portsnap support for tinderbox (which has svn support)

-

suspended due to the CVS exporter

If QAT is back by then, update QAT code to svn

-

itetcu

There is no QAT at the moment so suspend this

Create patches for portlint

marcus

Scan ports/ports-mgmt for ports/scripts which needs to be adjusted

Create patches for porters handbook and committers guide to reflect RCS change to svn

Create wiki page with best practice -> usefull svn commands, Checkout, Tagging, Branching?, Forced commit workaround, revive deleted files and ports, limitations, document svn mv/cp pitfall if target already exists and document how to escape from

beat

PortsSubversionPrimer

Set up svn2git converter for git.freebsd.org

uqs

Test all possible use cases and check if they are documented -> Create new port, update port, delete port, lock tree, tagging, revive deleted files and ports, repo-copy checklist

Set up svn-ports@ mailinglist

postmaster

secteam review of infrastructure

secteam

Disable auto module update script

edwin

Setting up ports repository in FreeBSD environment

clusteradm

Set up backup of repository

clusteradm

Migration

Task

Responsible

Contact

Comments

Send Heads up to ports-developers@, ports@ and ports-announce@

Lock down portstree

Run cvs2svn script

http://people.FreeBSD.org/~beat/cvs2svn/cvs2svn-port-shrinked.sh / Patched cvs2svn needed: http://people.freebsd.org/~beat/cvs2svn/cvs2svn.patch / Port patch with cvs2svn trunk and patch included: http://people.freebsd.org/~beat/cvs2svn/cvs2svn-port.patch

Import svn dump

Run svnadmin pack

Install and start svn2cvs converter

http://people.freebsd.org/~beat/cvs2svn/export.py

Update svnssh / checkacl and install new versions on svn.freebsd.org

http://people.FreeBSD.org/~beat/cvs2svn/svnssh.patch http://people.FreeBSD.org/~beat/cvs2svn/checkacl.patch

Populate svnadmin

http://people.freebsd.org/~beat/cvs2svn/create-svnadmin.sh

Install svn configuration

http://people.freebsd.org/~beat/cvs2svn/conf.tar

Install hooks

http://people.freebsd.org/~beat/cvs2svn/hooks.tar

Commit svn wrapper to ports/trunk/Tools/scripts

http://people.FreeBSD.org/~beat/cvs2svn/psvn

Change dfilter to work with SVN

gavin

Commit patches to ports/Tools and portlint

Commit patches to porters handbook and committers guide

Send heads up to portsnap, freshports, freshsource, freshbsd

Add note on freefall dmesg that pcvs is no longer open for commits

clusteradm

Send Heads up to cvs-ports@ that recipient should switch to svn-ports@

Change ports committer subscription from cvs-ports@ to svn-ports@ (possibly auto-migrate subscribers)

postmaster

Unlock tree

Send Heads up to ports-developers@, ports@, ports-announce@ and freebsd-announce@

Finishing work

Task

Responsible

Contact

Comments

Send heads up to tinderbox users that they should switch to svn (on tinderbox mailing-list)

deferred until cvsup is deprecated

Deprecate c(v)sup in favor of portsnap (for users) send heads up to ports@, ports-announce@ and freebsd-announce@

somewhere along the way...

Decommission ports cvsup infrastructure

freebsd-hubs

Someday...

Scripts for migration

scripts that need attention:

Script name

Responsible

Contact

Comments

MOVEDlint.awk

ports@ / OliverEikemeier

README

ports@

addport

RenatoBotelho

RenatoBotelho / ChrisRees

http://www.bayofrum.net/~crees/patches/addport-svn.diff (provisional)

bump_revision.pl

EdwinGroothuis

chkversion.pl

ErwinLansing

patchtool.py

MaximSobolev

portsvar.sh

DaichiGoto

prdone

Maintainer emailed 20/May; obsolete for years and hardcoded usernames

release/Makefile

re@

release/README

re@

rmport

ChrisRees

ChrisRees

http://www.bayofrum.net/~crees/patches/rmport-svn.diff (provisional)

sunshar.rb sunshar/Makefile sunshar/sunshar.1

AkinoriMusha

AkinoriMusha / StanislavSedov

tindex

ErwinLansing

PortsSVN (last edited 2012-05-20 12:40:24 by ChrisRees)