Login | Join Now
  • openCollabNet Technical Newsletter March '07

    Welcome to the March openCollabNet Technical Newsletter. openCollabNet continues to grow strongly, we now have over 4400 members and have seen well over 100,000 unique visitors who come to download CollabNet Subversion, get the free 15 user download of CollabNet Enterprise Edition, read technical articles or have their technical questions answered in the discussion forums, and - of course - read our new Subversion blog.

    Best regards,
    Guido Haarmans
    Developer Relations, CollabNet

    In this issue:

    • Subversion blog: new source of information around Subversion!
    • Subversion Tricks and Tips:
    • How Subversion conserves disk space?
    • How to change a log message in Subversion?
    • Now available: CollabNet Enterprise Edition download for Red Hat 4 and CentOS 4.4
    • openCollabNet brings Krugle’s search to Subversion repositories
    • Project Communication with CollabNet Enterprise Edition

    Subversion blog

    A few weeks ago we launched a Subversion blog: “Submerged”. A number of CollabNet employees will blog about Subversion, focusing on technical topics about deploying Subversion for globally distributed development. You’ll see bloggers like our Subversion committers and Mark Phippard (the Subclipse lead) plus some of our technical consultants who will share experiences about large-scale deployments of Subversion. The blog is at http://blogs.open.collab.net/svn.

    How Subversion conserves disk space?

    To keep the size of the repository as small as possible, Subversion uses deltification, also called "deltified storage". Deltification is the encoding of a chunk of data as a collection of differences against some other data. If two files are very similar, deltification results in storage savings because only the changes are stored, not the entire file.

    This works differently depending on what filesystem back-end you use. In BDB fulltexts are found at the tips of each distinct line of a file's history. When a change occurs, the new version is stored as fulltext, then the previous version is rewritten as a delta against that new version. FSFS stores deltas in the opposite direction so that old versions never need to be rewritten. When a file is changed, the new version is stored as a delta against an older version.

    Most source code files change frequently and Subversion's performance would degrade if it had to use every individual delta to re-create a file that has changed many times. Subversion uses "skip-deltas" to improve performance. Skip-deltas are deltas that are calculated not against the immediate next or previous version, but against a version that's closer in the chain of deltas to a fulltext representation of the file. This way the version of a file can be re-created using less deltas than when a delta for each individual change would be needed.

    For repositories created with Subversion 1.4 or later, space savings increase further because the delta chunks are stored using a compression algorithm.

    How to change a log message?

    From Version control with Subversion: Subversion log messages can be changed by an administrator using svnadmin setlog. This command changes the log message (the svn:log property) on a given revision of a repository, reading the new value from a provided file.

    $ echo "Here is the new, correct log message" > newlog.txt
    $ svnadmin setlog myrepos newlog.txt -r 388


    The svnadmin setlog command is bound by the same protections against modifying unversioned properties as a remote client because the pre- and post-revprop-change hooks are triggered and must be setup to accept changes of this nature. An administrator can get around these protections by passing the --bypass-hooks option to the svnadmin setlog command.

    CollabNet Enterprise Edition download for Red Hat 4 and CentOS 4.4

    The free 15 user download of CollabNet Enterprise Edition is now available for Red Hat Enterprise Linux 4 and CentOS 4.4. CollabNet’s flagship collaborative software development platform provides a web environment that enables successful distributed development by integrating applications for software development, project collaboration, communication and lifecycle management. Subversion is at its core for version control.

    Krugle

    Krugle is a code search engine for developers. Krugle crawls, parses and indexes code found in public and partner repositories. Search results include code and contextual information from projects, technical web pages, as well as resources such as Safari Books Online.

    CollabNet and Krugle have partnered to bring code search to openCollabNet and the open source communities that CollabNet hosts (such as tigris.org). You can find Krugle code search on the openCollabNet home page, (http://www.open.collab.net), or try advanced search at http://opencollabnet.krugle.com. To see it in action on one of our community sites, go to http://www.tigris.org and click on the openCollabNet tab.

    Project Communication with CollabNet Enterprise Edition

    So you've launched your project on the CollabNet platform and things are happening! Design talks are advancing, feedback is pouring in and your developers are itching to get started. How to keep everyone focused on the goal, not shooting off in all directions? Use your mailing lists and discussions, keep your Project Pages crisp -- and tie it all together with frequent project-wide announcements. Project members can keep up with your project announcements via RSS, or they can come to the project home page. Project announcements are perfect for setting a theme for your project, or pointing everyone involved with the project in a shared direction. Use them to call attention to a relevant news article or blog post, or remind project members of an upcoming project related event. Read more about project communication at http://collabnet-products.open.collab.net/articles/projectcommunication.html

    Webcasts and events

    CollabNet Live! CollabNet Enterprise Edition – April 3
    A quick, low-pressure introduction to CollabNet Enterprise Edition, including key functionality and a brief outline of the advantages of adopting open source development best practices for the enterprise.
    http://www.collab.net/webinar5

    CollabNet Live! CUBiT – April 10
    Live demo of CollabNet CUBiT, the new program to automate the rapid setup, teardown and re-configuration of servers for development, build and test purposes.
    http://tinyurl.com/3c2alk

    CollabNet Live! Subclipse – April 17
    A hands-on overview of using Subversion with Eclipse.
    http://www.collab.net/webinar7

    CollabNet Live! Subversion –April 24
    A detailed, hands-on demonstration of Subversion.
    http://www.collab.net/webinar9/

    Recent CollabNet News

    CollabNet Integrates Eclipse Mylar Task Management
    http://tinyurl.com/35appk

    Krugle brings code search to CollabNet developer communities
    http://www.collab.net/news/press/2007/krugle.html

    CollabNet partners with Ivis™ Technologies to meet the needs of managers of globally distributed projects
    http://www.collab.net/news/press/2007/ivis.html

    CollabNet joins Opsware Technology Alliance Partner Program
    http://www.collab.net/news/press/2007/opsware.html

    Feedback and Suggestions

    Do you have feedback and suggestions about openCollabNet or this technical newsletter? Please send an email to facilitator@open.collab.net.