During geotools releases we commit to the tag to update version numbers and to update the README
http://docs.codehaus.org/display/GEOT/How+to+cut+a+release#Howtocutarelease-Changeversionnumber Also, I find being able to commit to a tag useful when releasing geotools as part of a geoserver release because of the circular nature of the relationship: GeoServer releases require a geotools release, but bugs in a geotools release often break geoserver So what I do is: 1) create a geotools tag for a release 2) prepare the tag with version numbers and what not 3) test + build geoserver from the geotools release 4) fix any geotools bugs that cause problems in geoserver 5) update the geotools release tag with any fixes 6) rebuild and release geoserver 7) finish geotools release This sort of workflow is necessary to avoid having to freeze geotools for an extended period of time while doing a geoserver release, which can take days. I could do the same with a spike or a branch or whatever, but I find doing it directly on the tag usually works just fine. So +1 on "must-have-logs" and -0.5 on "no-commits-to-tags". -Justin Ben Caradoc-Davies wrote: > For our (AuScope/CSIRO) svn repos, we have an svn pre-commit script that > uses svnlook to require a log message and to prevent commits to tags. > Commits to tags are usually unintended and always ill-advised. > > Would the GT-dev community like to adopt a must-have-logs and > no-commits-to-tags policy and enforce it using this script? > > hooks/pre-commit: > > > #!/bin/sh > > # [1] REPOS-PATH (the path to this repository) > # [2] TXN-NAME (the name of the txn about to be committed) > # > > REPOS="$1" > TXN="$2" > > noLogMessage() { > echo "Please provide a log message" >&2 > exit 1 > } > > # Make sure that the log message contains some text. > SVNLOOK=/usr/bin/svnlook > $SVNLOOK log -t "$TXN" "$REPOS" | \ > grep "[a-zA-Z0-9]" >/dev/null || noLogMessage > > TAGS_REGEX='tags/[^/]\+' > # Get list of transactions in the 'tag' directory > TAGS_CHANGES=`"$SVNLOOK" changed -t "$TXN" "$REPOS" 2>/dev/null | \ > awk '{ print $2; }' 2>/dev/null | \ > grep ^tags/ 2>/dev/null | \ > sed -e "s!^\($TAGS_REGEX\).*!\1!" | \ > sort | \ > uniq` > # Get head revision number > YOUNGEST=`svnlook youngest "$REPOS" 2>/dev/null` > # For every line in transaction, > # check to see if directory in tags exists > for CHANGE in $TAGS_CHANGES; do > # If directory in tags exists, deny transaction > if svnlook proplist -r $YOUNGEST "$REPOS" "$CHANGE" >/dev/null 2>&1 ; > then > echo "Cannot modify existing tag: ${tag}" >&2 > exit 1 > fi > done > > > # All checks passed, so allow the commit. > exit 0 > > > -- Justin Deoliveira OpenGeo - http://opengeo.org Enterprise support for open source geospatial. ------------------------------------------------------------------------------ Enter the BlackBerry Developer Challenge This is your chance to win up to $100,000 in prizes! For a limited time, vendors submitting new applications to BlackBerry App World(TM) will have the opportunity to enter the BlackBerry Developer Challenge. See full prize details at: http://p.sf.net/sfu/Challenge _______________________________________________ Geotools-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/geotools-devel
