dotnetpowered.com - Brian Ritchie's .NET Development Site   [ Home ]

SharpRepositoryLib 0.1

Overview

Abstract interface for accessing different source repository providers over a remote connection.

Features

  • Plug-in architecture for accessing different providers
  • Directory Listing
  • File Listing
  • Revision History (with comments)

Download

[ View Source Online Download Source & Binaries | Download Binaries Only ]

Online Demo

Want to see it in action?  The DevCenter uses the SharpRepositoryLib to browse source repositories through a web page.

Supported Repository Providers

Concurrent Version System (CVS) [ Home ]
CVS is the Concurrent Versions System, the dominant open-source network-transparent version control system.

Got Dot Net Workspaces [ Home ]
GotDotNet Workspaces is an online collaborative development environment where .NET developers can create, host and manage projects throughout the project lifecycle.

Subversion Version Control System [ Home ]
The goal of the Subversion project is to build a version control system that is a compelling replacement for CVS in the open source community.

Sample web.config or app.config file:

 <configSections>
    <section name="Repository" type= "SharpRepositoryLib.RepositorySectionHandler,SharpRepositoryLib.Core" />
 </configSections>
 
<Repository Refresh="300">
	<RepositoryType Name="CVS" Type="SharpRepositoryLib.CVS.CVSRepository, SharpRepositoryLib.CVS" />
	<RepositoryType Name="SVN" Type="SharpRepositoryLib.Subversion.SVNRepository, SharpRepositoryLib.SVN" />
	<RepositoryType Name="Workspace" Type="SharpRepositoryLib.Workspaces.WorkspaceRepository, 
	      SharpRepositoryLib.Workspaces" />
</Repository>
 

Sample Code:

 
 string ConnStr="type=svn;uri=http://svn.plone.org/plone/CMFPlone/trunk/";
 IRepository repository=RepositoryFactory.Connect(ConnStr);
 IDirectory rootdir=repository.GetRootDirectory();
 foreach (IDirectory dir in rootdir)
 {
	foreach (IFile file in dir.GetFiles())
	{
		foreach (IRevision rev in file.Revisions)
		{
		}
	}
 }