First time here? Check out the site's "greatest hits" or read a post from the archives. Feel free to leave a comment or ask a question, and consider subscribing to the latest posts via RSS or e-mail. Thanks for visiting!
Do you Tweet? Follow me on Twitter @shanselman or learn how to use Twitter!
« Open Source versus Source Out in the Ope... | Main | Hanselminutes Podcast 15 »

DasBlog moved from CVS to SVN

Posted 2006-04-26 05:03 PM in ASP.NET | DasBlog | Subversion | NUnit | Tools.

Just an FYI to those who care. Joshua Flanagan has been goodly enough to help us move DasBlog's source from CVS to SVN up on SourceForge. To browse the project on the web, go to: http://svn.sourceforge.net/viewcvs.cgi/dasblogce/

Note: Most DasBlog enthusiasts chase the source code and are running the latest stuff by building it. However, for the rest of us, we do recognize the need for a 1.9 binary release and will get to it soon.

However, if you DO want the code...here's Josh's excellent instructions:

Getting the Code

To retrieve and work with the code, you need a SubVersion client.

  • You can use the command-line client (not recommended) http://subversion.tigris.org/
  • Or you can use the TortoiseSVN Windows shell extension (rockin' sweet): http://tortoisesvn.tigris.org/
    • In either case, you must enable the ASP.NET "hack". It simply requires you set an environment variable before working with SubVersion: set SVN_ASP_DOT_NET_HACK=1.
      NOTE: The new TortoiseSVN will ask you this when you install it. Here's more information about the switch/hack.

The rest of these instructions assume the command-line client. The equivalent actions with TortoiseSVN should be obvious.

The first thing you will notice is that the project root folder (dasblogce), has 3 subfolders:
 [branches]
 [tags]
 [trunk]

These 3 folders are a common convention in Subversion repositories. You can read about them in the Subversion book http://svnbook.red-bean.com/. If you are new to Subversion, I highly recommend you read the first 3 chapters. If you are already familiar with Subversion and how to use these folders, you can skip down to the section labeled *DasBlog Specifics.

For example, to checkout a working copy of the entire codebase, you would use the following command:

svn checkout https://svn.sourceforge.net:443/svnroot/dasblogce/trunk dasblogce

This will create a new folder on your filesystem named dasblogce which contains all of the data under the trunk folder. Nothing from branches or tags will be retrieved.

The DasBlog trunk folder has the following layout:
 [docs]
 [lib]
 [source]
 [tools]

The source folder contains only the source code and automated unit tests created by the DasBlog development team. Under CVS, this folder held all files related to the project. The following sections will describe the new location for files that are not considered part of the DasBlog source code, but are still kept with the project.

The docs folder contains all documentation and reference material (URL links). This includes the readme, license, and release notes.

The lib folder contains all compiled 3rd party assemblies referenced by the source code projects.
These files used to be in the source\Assemblies folder. The projects under the source folder have been updated to reference the files in the lib folder (which is why it is important to checkout the entire trunk, and not just the source subfolder, when working on code).

The tools folder contains all of the executables needed to support the development and packaging of DasBlog (not including the .NET Framework itself). For example, the tools\nunit folder contains all of the nunit executables required to run the DasBlog unit tests. Note that the nunit.framework.dll referenced by the test projects is copied to the lib folder - source code should not reference files in the tools folder directly. Keeping the tools stored with the project helps ensure that all developers on the project always use the same version. (You will want to remove NUnit from your GAC to avoid overriding the project copies.) For more information about this strategy, check out Mike Robert's excellent article "How to setup a .NET Development Tree":

Kudos and big thanks to Josh for taking the initiative on this!

Tracked by:
"Using WinMerge with Subversion" (Joshua Flanagan) [Trackback]
"Interesting Finds (oS edition) 2006/04/26" (Jason Haley) [Trackback]
"Interesting Finds (oS edition) 2006/04/26" (Jason Haley) [Trackback]
"DasBlog switched to SVN" (Kelly White) [Trackback]
"Compiling the latest DasBlog Source Code (aka the HEAD)" (DasBlog Documentation... [Trackback]
"Re-Post of "Compiling the DasBlog Source Code" from DasBlog.info" (RoboSapient.... [Trackback]
"DotNetKicks Flare for FeedBurner and DasBlog" (ComputerZen.com - Scott Hanselma... [Trackback]
"Upcoming dasBlog v1.9 feature list" (greg hughes - dot - net) [Trackback]
"dasBlog 1.9 mit Visual Studio 2005 kompilieren" (GENiALi's Blog) [Trackback]
"dasBlog 1.9 Sourcecode runterladen" (GENiALi's Blog) [Trackback]
"Compiling the latest DasBlog Source Code (aka the HEAD)" (DasBlog Documentation... [Trackback]


Wednesday, April 26, 2006 7:00:34 PM (Pacific Standard Time, UTC-08:00)
An even better link for browsing the source code on the web is:
http://svn.sourceforge.net/viewcvs.cgi/dasblogce/

(Its my fault for sending the wrong link the first time)

ViewVC has great features that allow you to see file differences, log messages, and full details of every checkin.
Thursday, April 27, 2006 11:10:30 AM (Pacific Standard Time, UTC-08:00)
Nice and all.. But *why oh why* the ASP.Net hack. You don't need this any more as long as you use VS2005. It completely messes up every other SVN working copy on your disk, creating complete havoc if you're not careful...
Henning Pedersen
Thursday, April 27, 2006 12:04:25 PM (Pacific Standard Time, UTC-08:00)
Well you don't HAVE to use the ASP.NET hack if it bothers you that much. I don't sweat it myself as I'm already using the hack for all repos on my system.
Scott Hanselman
Thursday, April 27, 2006 6:14:55 PM (Pacific Standard Time, UTC-08:00)
Last place I worked at switched to SVN. It was generally regarded as an improvement all around.
Matt
Thursday, April 27, 2006 6:55:33 PM (Pacific Standard Time, UTC-08:00)
Henning - yes, you can create complete havoc if you're not careful, but when is that not true? If you pay attention to what you are doing, its really not all that big of a deal. You can rename all of your existing .svn folders to _svn, or you can just re-check them out, or you can just enable the asp.net hack temporarily via a simple batch script for the little time you spend in VS2003.
DasBlog is currently under development for .NET 1.1 only, which means VS2005 is not an option. That's why the ASP.NET hack.
Comments are closed.