Products

Solutions

Resources

Partners

Community

Blog

About

QA

Ideas Test

New Community Website

Ordinarily, you'd be at the right spot, but we've recently launched a brand new community website... For the community, by the community.

Yay... Take Me to the Community!

Welcome to the DNN Community Forums, your preferred source of online community support for all things related to DNN.
In order to participate you must be a registered DNNizen

HomeHomeArchived Discus...Archived Discus...Developing Under Previous Versions of .NETDeveloping Under Previous Versions of .NETASP.Net 2.0ASP.Net 2.0DNN and Team DevelopmentDNN and Team Development
Previous
 
Next
New Post
3/17/2008 8:06 PM
 
Hi,
I am looking for best practices or advice on how others are doing team development with DNN.  i will tell you how we have it set up currently.
  • We have the DNN project checked into Visual Sourcesafe
  • Along with this, we also have checked in, the MDF files (of which there are two, the core DNN database and an application specific database we created to store business data).

Each developer checks out everything locally on their workstations.  This means that they have the databases locally also.  Each developer works on their modules locally, and then checks their changes in, including the database.  HOWEVER, here is a scenario I am struggling with:  What if two developers are working locally with the latest code base, both add a module.  The module for both those developers has an ID = 10 in their local database.  When the developers check in their changes, won't they overwrite each others database entries?  Even if VSS is smart enough to merge the database differences (can it do this?), how does it manage the fact that both new entries from the two developers share the same ID?

What is the best way to manage this?

I suppose we can set it up so that the local developers all connect to a central development database on a server accessible to all developers. I.e. We would deploy the app from CVS to this server and it would serv as an 'integrated' dev server..full functional.  Local developers would not use the DNN app from there, they use their local checked out source, but connect to that central dev database server so that changes they make are reflected in the database without the above mentioned conflicts arising.
BUT, the problem i see here is this:
  • developer 1 creates a new module and registers it with DNN, thereby making the database entries in the central dev database.  Developer 1 has not yet checked in the .NET source though
  • developer 2 is hitting the same database.  Will his local instance of DNN bomb since he is connecting to the same database that has entries for a module, but he doesn't yet have the .NET code/control for that module?
What is the best way to handle these issues in a team development environment?

Thank you

 
 
New Post
3/17/2008 9:08 PM
 


Michael Washington
http://ADefWebserver.com
www.ADefHelpDesk.com
A Free Open Source DotNetNuke Help Desk Module
 
New Post
3/17/2008 9:49 PM
 

Thanks much.  this article doesn't seem to address the database issues mentioned however. 

 
New Post
3/17/2008 11:17 PM
 

A method I have used successfully when working with several people on a DNN project is to have a shared development sql server, but keep all the website site files locally..

So your connection string, instead of saying server=(local) would just say server=shared_server_name\sql_instance_name eg dbserver1\sql2005dev

Use your SS or SVN to keep everyone updated with the same file set.  When one person creates a module, because everyone uses the same DB, all they have to do to start using the new module is get the latest version of ~/desktopmodules.  You wont have any problems in any table with conflicting ID values. And you wont have to do any manual DB merging..

JK


You know your website is cool, so why not let your users help you by spreading the word on social networking sites - get the DotNetNuke Social Bookmarks Module with 57 different ways to add social bookmarks to your site ... or download the FREE demo right now
 
New Post
3/18/2008 1:35 AM
 

JK wrote

A method I have used successfully when working with several people on a DNN project is to have a shared development sql server, but keep all the website site files locally..

So your connection string, instead of saying server=(local) would just say server=shared_server_name\sql_instance_name eg dbserver1\sql2005dev

Use your SS or SVN to keep everyone updated with the same file set.  When one person creates a module, because everyone uses the same DB, all they have to do to start using the new module is get the latest version of ~/desktopmodules.  You wont have any problems in any table with conflicting ID values. And you wont have to do any manual DB merging..

JK

that is good, because that is exactly how i proposed setting it up earlier.  The only unknown is how will affect users that do not yet have a module that some other developer is working on locally, but has not yet checked in; will cause the other developers any down time due to potential errors/exceptions?  I suppose in that case, we will ask the developer to check in his work as is and go from there.

 
Previous
 
Next
HomeHomeArchived Discus...Archived Discus...Developing Under Previous Versions of .NETDeveloping Under Previous Versions of .NETASP.Net 2.0ASP.Net 2.0DNN and Team DevelopmentDNN and Team Development


These Forums are dedicated to discussion of DNN Platform and Evoq Solutions.

For the benefit of the community and to protect the integrity of the ecosystem, please observe the following posting guidelines:

  1. No Advertising. This includes promotion of commercial and non-commercial products or services which are not directly related to DNN.
  2. No vendor trolling / poaching. If someone posts about a vendor issue, allow the vendor or other customers to respond. Any post that looks like trolling / poaching will be removed.
  3. Discussion or promotion of DNN Platform product releases under a different brand name are strictly prohibited.
  4. No Flaming or Trolling.
  5. No Profanity, Racism, or Prejudice.
  6. Site Moderators have the final word on approving / removing a thread or post or comment.
  7. English language posting only, please.
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out