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 |
|
|
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 |
|
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 |
|
|
|
Write additional hooks if needed (eg. for QAT) |
beat |
|
|
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 |
|
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 |
|
|
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 |
|
|
|
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 |
|
|
|
Install svn configuration |
|
|
|
Install hooks |
|
|
|
Commit svn wrapper to ports/trunk/Tools/scripts |
|
|
|
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 |
http://www.bayofrum.net/~crees/patches/addport-svn.diff (provisional) |
||
bump_revision.pl |
|
|
|
chkversion.pl |
|
|
|
patchtool.py |
|
|
|
portsvar.sh |
|
|
|
prdone |
|
|
Maintainer emailed 20/May; obsolete for years and hardcoded usernames |
release/Makefile |
re@ |
|
|
release/README |
re@ |
|
|
rmport |
http://www.bayofrum.net/~crees/patches/rmport-svn.diff (provisional) |
||
sunshar.rb sunshar/Makefile sunshar/sunshar.1 |
|
||
tindex |
|
|