Kevin Steffer Outloud – web, business and opinions

12Oct/093

Best Practice Visual Studio with SVN, VCS and SCM

In my research on what others have of opinions and experience with subversion (SVN) or source control management (SCM) I have collected some good links of various kind – slide shows, red book and just experiences or ideas.

My focus on my research was dealing with Web development and specially ASP.NET development with Visual Studio along with third party CMS software.

The major pain is Visual Studio, when you open up your solution and don’t touch anything your “Solution.suo” file gets modified and with SVN you have a modified state of your project folder and you need to take action either commit the change or revert the file.

My conclusion on ASP.NET development with Visual Studio is

Add the following to your ignore list:

  • Solution\Project\bin
  • Solution\Project\obj
  • Solution\Solution.suo (hidden file)

Have your repository layout like this:

  • Project
    • branches
    • tags
    • trunk

Use the trunk for your “main-line”-development. With “main-line” I think of primary development that always stable and never has checked-in code that doesn’t build.

Use your branches for creating testing, experiments and development of larger features that should not break the trunk, but needs to be committed often for backup and history of file changes. Keep your branch in sync with the trunk, remember to regularly merge changes from trunk into your branch, this prevents you from “drifting” to far away from the trunk and that makes it much easier to merge your branch back into the trunk when time comes for that.

Use your tags for creating snapshots of your trunk or branch that goes into releases and is thought of as test solutions or the LIVE beasts that hits the production servers.

If you have questions, suggestions I’d very much like to hear from you and your experience with the subject – thanks in advance.

Subversion Best Practices Links

http://www.slideshare.net/mza/subversion-best-practices
http://electricjellyfish.net/garrett/talks/oscon2004/svn-best-practices/
http://svn.collab.net/repos/svn/trunk/doc/user/svn-best-practices.html
http://www.red-bean.com/fitz/presentations/2006-06-28-AC-EU-Subversion-best-practices.pdf
http://devnulled.com/content/2006/10/guide-and-best-practices-for-subversion-branching/
http://nedbatchelder.com/text/quicksvnbranch.html
http://daptivate.com/archive/2008/08/28/subversion-best-practices-for-web-applications.aspx

Filed under: ASP.NET, CMS, Web 3 Comments
11Feb/050

Starting up Microsoft Content Management Server 2002 with Visual Studio .NET 2003

Introduction
Well for about a week or two I've been concentrating on learning howto to develop websites with the Microsoft flagship of CMS solutions. The Microsoft Content Management Server 2002.MCMS 2002 is pretty awesome in many ways - it has also some new issues for how CMS is thought to be.

MCMS is a complete suite of features in CMS, content creation, content approval, content publishing. The flow is pretty obvious, but for some smaller websites it can become very annoying if you have to approve every document before publishing. You won't even think about the idea of migrating from some other CMS system.

But anyways MCMS brings many benefits. It brings you the backend to the front of your Internet Explorer who wouldn't like that?

To the Tech
I installed the MCMS 2002 evaluation edition on my WinXP machine. And I must say: What a task!!!
MCMS requires:

  • Microsoft Visual Studio .NET 2002
  • Microsoft Visual Studio .NET 2003
  • Internet Explorer Web Controls (hard to find - you'll get the wrong one if you download the one from www.gotdotnet.com)
  • Microsoft SQL Server 2000 (SP3)

Well after installing my .NET 2002 packages (I only had .NET 2003 installed) it takes a while. Then I had to find the correct package of then Internet Explorer Web Controls to install.
Well and finally I installed the MCMS 2002 Evaluation.

Setting up the database was quite easy.

  • Create a new database on your SQL Server
  • Start MCMS Database Configuration Application
  • Follow the wizard and it takes care of the rest.

I installed a MCMS Sample Site the "WoodGroveNet" site to see how files were structured and just how to see what parts a MCMS site was made of.
This was pretty easy also to open up then WoodGroveNet site in my VS .NET 2003 and suddenly theres was a Template Gallery :D This is a resource of the MCMS where it keeps the templates for creating a new webpage. WOUW could this be so easy ??? - not quite but almost.

I created a new Gallery and made a template and followed the "Site Developer Tutorial" in the MCMS Help on howto create templates and matching "Microsoft Content Management Template" (a aspx file that is made ready for dragging content objects onto). I followed the tutorial through out my testing and made the template and the template aspx file. Matched those together compiled my site again.
I even tried to make a new website and went through the tutorial again on howto make the templates but when your make a complete new website you have to dig in using the MCMS Site Manager, the tutorial told me everything - NICELY :D

I tried to view the page and the went into edit mode and made a new page with my template and wrote some content. Made a preview of my stuff and published it - AND IT'S ALIVE !!!

I made a new "Channel" as told from the tutorial and I must say when I launched the Site Manager I got a bit more confident on how to develop with the MCMS. It all suddenly became clear how the MCMS worked in the flow of template -> content -> publish -> view workflow.

Everything is build on a subsite level called a "Channel". You create Channels for resources, templates and sites. So your website content authors and editors know exactly what parts to use when they create a new page or new content.

Well this is will be all for now - know I'll try to make some coding for a navigation menu which doesn't seem to be that easy. The Sample site WoodGroveNet uses a seperate project called "McmsWebControlLibraryVB" and I think I have to dig into that beautiful looking creature and make some AHHHHH before making my own.

Untill then - take care

Kevin Steffer [MCP]
- and still learning

Filed under: CMS No Comments